根据 JasperReports 中的条件更改文本字段数据颜色(前景色)
Posted
技术标签:
【中文标题】根据 JasperReports 中的条件更改文本字段数据颜色(前景色)【英文标题】:Change text field data color (Foreground color) based on condition in JasperReports 【发布时间】:2012-02-03 23:34:53 【问题描述】:我是 JasperReports 的新手。我正在使用 iReport 设计报告。我有三个值 x,y,z。如果 z x 则 z 的数据颜色应更改为“红色”。 请告诉我该怎么做。
我正在使用 JDeveloper 开发桌面应用程序。和 iReport 设计 JasperReport。
【问题讨论】:
另一种解决方案:***.com/questions/40585360/… 【参考方案1】:您可以使用Conditional styles
来解决此问题。
样本:
<style name="ZFieldStyle">
<conditionalStyle>
<conditionExpression><![CDATA[$FZ < $FY]]></conditionExpression>
<style forecolor="#000000"/>
</conditionalStyle>
<conditionalStyle>
<conditionExpression><![CDATA[$FZ>$FX]]></conditionExpression>
<style forecolor="#FF0000"/>
</conditionalStyle>
</style>
...
<field name="X" class="java.lang.Integer"/>
<field name="Y" class="java.lang.Integer"/>
<field name="Z" class="java.lang.Integer"/>
...
<textField>
<reportElement style="ZFieldStyle" x="200" y="0" />
<textElement/>
<textFieldExpression><![CDATA[$FZ]]></textFieldExpression>
</textField>
【讨论】:
还有几个问题。为什么我不能对背景色做同样的事情?另外,当我这样做时,单元格边框颜色也会改变......有没有办法防止这种情况? 样式中可以使用backcolor属性以上是关于根据 JasperReports 中的条件更改文本字段数据颜色(前景色)的主要内容,如果未能解决你的问题,请参考以下文章
Flutter Forms:有没有办法根据某些条件更改输入文本的颜色?
如何根据 Redux Form 中的另一个输入有条件地显示一个输入?
如何根据 Vue.js 2.6.11 和 Viutify 2.2.11 的条件更改 <v-data-table> 中列值的文本和颜色