3

在此处输入图像描述

这张图片显示了我的列在交叉表中的样子(我有两个列组 - 在本例中是日期和状态)。日期应该在 5 列中居中,并且我已将水平设置为居中。但是,它只是根据我在 iReport 中设置的大小来居中。我尝试调整各种设置,但无法将第一行居中。我正在使用 JasperReports 4.0.1。

4

1 回答 1

4

我知道这有点晚了,但这就是你的做法:

当您声明 columnGroup 元素时,将 headerPosition 属性设置为“Stretch”。例子:

<columnGroup name="month" height="20" headerPosition="Stretch">
    <bucket>
        <bucketExpression class="java.lang.String"><![CDATA[$F{month}]]></bucketExpression>
    </bucket>
    <crosstabColumnHeader>
        <cellContents backcolor="#999999" mode="Opaque">
            <box>
                <pen lineWidth="0.5" lineStyle="Solid" lineColor="#000000"/>
            </box>
            <textField>
                <reportElement style="Crosstab Data Text" x="0" y="0" width="16" height="20"/>
                <textElement verticalAlignment="Middle"/>
                <textFieldExpression class="java.lang.String"><![CDATA[$V{month}]]></textFieldExpression>
            </textField>
        </cellContents>
    </crosstabColumnHeader>
    <crosstabTotalColumnHeader>
        <cellContents/>
    </crosstabTotalColumnHeader>

问候, 达米安

于 2012-02-10T15:26:29.360 回答