Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jasper reports 如何借助表达式设置textField的文本对齐方式?_Jasper Reports - Fatal编程技术网

Jasper reports 如何借助表达式设置textField的文本对齐方式?

Jasper reports 如何借助表达式设置textField的文本对齐方式?,jasper-reports,Jasper Reports,如何使用参数值更改textField的文本对齐方式?该属性可用于解决此任务。此属性可应用于报表的元素,如textField 例子 我在Studio中使用了一个空的记录数据适配器来运行/构建报告 报告模板 名为“对齐方式”的参数用于设置水平文本对齐方式 <?xml version="1.0" encoding="UTF-8"?> <jasperReport xmlns="http://jasperreports.sourcefor

如何使用参数值更改textField的文本对齐方式?

该属性可用于解决此任务。此属性可应用于报表的元素,如textField

例子 我在Studio中使用了一个空的记录数据适配器来运行/构建报告

报告模板 名为“对齐方式”的参数用于设置水平文本对齐方式

<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="Text alignment example" pageWidth="200" pageHeight="200" columnWidth="200" leftMargin="0" rightMargin="0" topMargin="0" bottomMargin="0">
    <property name="com.jaspersoft.studio.data.defaultdataadapter" value="One Empty Record"/>
    <parameter name="alignment" class="java.lang.String">
        <defaultValueExpression><![CDATA["Right"]]></defaultValueExpression>
    </parameter>
    <title>
        <band height="40" splitType="Stretch">
            <textField>
                <reportElement x="0" y="10" width="200" height="30">
                    <propertyExpression name="net.sf.jasperreports.style.hTextAlign"><![CDATA[$P{alignment}]]></propertyExpression>
                </reportElement>
                <textFieldExpression><![CDATA["Some text"]]></textFieldExpression>
            </textField>
        </band>
    </title>
</jasperReport>

通过propertyExpression设置属性的表达式:


输出结果 JSS的输出结果


什么原因不起作用?是的,它现在正在工作。实际上我的报告版本问题应该得到解决。我还有一个问题,如何在对齐参数上应用表达式。我的表达式是:-$P{alignment}.equals(“c”)?“右”:“左”
<propertyExpression name="net.sf.jasperreports.style.hTextAlign"><![CDATA[$P{alignment}]]></propertyExpression>