如何使用JapserReports创建带有固定标头的Excel报告? 我的意思是当我滚动Excel文件时,我需要修复标题。
答案 0 :(得分:8)
目前可以通过在每个报告的jrxml文件中添加几个属性来实现。请查看冻结窗格的Advanced Excel Features。如果你想冻结第一个列标题之后的所有内容(基本上在左侧),它将如下所示:
<staticText>
<reportElement style="Sans_Bold" mode="Opaque" x="0" y="60" width="104" height="20" forecolor="#FFFFFF" backcolor="#666666">
<property name="net.sf.jasperreports.export.xls.auto.filter" value="Start"/>
<property name="net.sf.jasperreports.export.xls.column.width" value="110"/>
<property name="net.sf.jasperreports.export.xls.freeze.column.edge" value="Left"/>
</reportElement>
<box>
<leftPen lineWidth="0.5" lineColor="#000000"/>
<bottomPen lineWidth="0.5" lineColor="#000000"/>
</box>
<textElement verticalAlignment="Middle"/>
<text><![CDATA[State]]></text>
</staticText>
或者如果你想要冻结标题下面的所有内容,你可以在下面的字段中执行以下操作:
<staticText>
<reportElement style="Sans_Bold" mode="Opaque" x="316" y="60" width="199" height="20" forecolor="#FFFFFF" backcolor="#666666">
<property name="net.sf.jasperreports.export.xls.freeze.row.edge" value="Bottom"/>
</reportElement>
<box>
<leftPen lineWidth="0.5" lineColor="#000000"/>
<bottomPen lineWidth="0.5" lineColor="#000000"/>
<rightPen lineWidth="0.5" lineColor="#000000"/>
</box>
<textElement verticalAlignment="Middle"/>
<text><![CDATA[Street]]></text>
</staticText>
如果你下载了JasperReports zip,那么在xlsfeatures文件夹中有一个包含这个工作示例的demo文件夹。作为最后一个没有,这个演示在导出到xls时对我起作用,但是当我尝试使用xlsx时却没有(尽管可能有一种方法可以使它工作,但我找不到任何快速的东西)。
答案 1 :(得分:0)