3

ここに画像の説明を入力

この図は、クロス集計で列がどのように表示されるかのサンプルを示しています (2 つの列グループがあり、この場合は日付とステータスです)。日付は 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 に答える