2012-01-06 17 views

risposta

13

È possibile utilizzare Conditional styles per risolvere questo problema.

Il campione:

<style name="ZFieldStyle"> 
    <conditionalStyle> 
     <conditionExpression><![CDATA[$F{Z} < $F{Y}]]></conditionExpression> 
     <style forecolor="#000000"/> 
    </conditionalStyle> 
    <conditionalStyle> 
     <conditionExpression><![CDATA[$F{Z}>$F{X}]]></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" width="100" height="20"/> 
    <textElement/> 
    <textFieldExpression><![CDATA[$F{Z}]]></textFieldExpression> 
</textField> 
+0

Alcune domande supplementari. Come mai non posso fare lo stesso con il backcolor? Inoltre, quando faccio questo, cambia anche il colore del bordo della cella ... c'è un modo per prevenirlo? –

+1

È possibile utilizzare la proprietà backcolor nello stile –