2012-11-16 82 views
3

我有一份報告提供了一個數據表。該報告迄今爲止效果很好。
現在我需要根據內容值對一些單元格進行調色。
我曾經以包括文本字段表達的配色方案,例如:在iReport中使用條件格式

($F{MyBooleanValue}==true)?"<style backcolor='green'>PASS</style>":"<style backcolor='red'>FAIL</style>" 

這一工程,但它是非常骯髒和管理一個地獄和再利用。

所以我轉向條件格式功能。我定義了一種名爲Colourised的基礎風格。然後兩個非常基本的條件樣式:

Colourised: 
    opaque = true 
pass: 
    opaque = true 
    Condition Expression = "true" 
    Backcolor = [51,255,51] 
fail: 
    opaque = true 
    Condition Expression = "false" 
    Backcolor = [255,102,102] 

這通常應該將單元格的背景顏色更改爲綠色(與單元格值無關)。

現在我嘗試使用以下屬性在我的單元格上使用此格式,但單元格保持絕望的白色。

MyCell: 
    opaque = true 
    Text Field Expression = "$F{MyBooleanValue}" 
    Style = "Colourised" 

我還設置了評估屬性

<property name="net.sf.jasperreports.style.evaluation.time.enabled" value="true"/> 

任何提示?有沒有我忽略的東西?

+0

你可以發佈* jrxml *文件的片段樣式定義和樣式* textField *嗎? –

回答

2

好,有點挖後,我發現,細胞propertie:

MyCell: 
    Markup = "styled" 

需要被設置爲:

MyCell: 
    Markup = "none" 

然後背景顯示正確的顏色。