如何使用Java在iReport中动态更改文本字段的背景色

如何使用Java在iReport中动态更改文本字段的背景色,java,ireport,Java,Ireport,我想根据变量更改文本字段的背景色 逻辑是这样的: if (variable <= 20) then text field color = red else if (variable > 20) then text field color = green end if if(变量20)则 文本字段颜色=绿色 如果结束 类似于此。通常的方法是使用条件样式:您必须创建一个新样式: 将条件放入样式中,并将样式应用于文本字段。 <style name="alternateS

我想根据变量更改文本字段的背景色

逻辑是这样的:

if (variable <= 20) then
 text field color = red
else if (variable > 20) then
text field color = green
end if
if(变量20)则
文本字段颜色=绿色
如果结束

类似于此。

通常的方法是使用条件样式:您必须创建一个新样式:

将条件放入样式中,并将样式应用于文本字段。


   <style name="alternateStyle" fontName="Arial">
      <conditionalStyle>
         <conditionExpression><![CDATA[new Boolean($V{SANCTION_AMOUNT_MEASURE}.intValue() <= 20)]]></conditionExpression>
         <style mode="Opaque" backcolor="#FF0000" isBold="true"/>
      </conditionalStyle>
      <conditionalStyle>
         <conditionExpression><![CDATA[new Boolean($V{SANCTION_AMOUNT_MEASURE}.intValue() > 20)]]></conditionExpression>
         <style mode="Opaque" backcolor="#00FF00" isBold="true"/>
      </conditionalStyle>
   </style>
20)]]>
您能给出一个示例,说明应该在条件样式上添加什么内容吗?我知道了,但是可以在一个文本字段中添加多个条件样式吗?您可以在条件样式上添加多个条件:,但据我所知,你不能在一个字段中放置多个样式。你能为你的代码示例提供一些解释吗?当你使用带有条件的样式时,你必须在布尔构造函数中编写表达式。