2016-05-30 4 views
-1

Я добавить conditionnal стиль моего доклада для альтернативного стиля строки, как это:Jasper IReport Альтернативные цвета строк с пользовательского стиля

<style name="tab_page_4"> 
     <conditionalStyle> 
      <conditionExpression><![CDATA[$V{REPORT_COUNT}%2 == 1]]></conditionExpression> 
      <style forecolor="#FFFFFF" backcolor="#E7ECF4"/> 
     </conditionalStyle> 
</style> 

<reportElement key="textField" style="tab_page_4" mode="Opaque" x="11" y="5" width="94" height="15" forecolor="#00597C" backcolor="#FFFFFF" uuid="4ea6f9a0-d1c8-42f0-8ae4-7c9780fcfe3d"/> 

Когда я генерировать свой доклад, не работает пользовательский стиль.

Что я забыл?

+0

Попробуйте изменить определение TextField: ' ' –

+0

Я удалил свойство Opaque, без изменений –

+0

Как насчет удаления цветов ? И вы забыли добавить 'mode =" Opaque "' style to style –

ответ

1

При использовании условных стилей важно удалить все данные стиля в элементе. Это означает, что в этом случае элементы mode, forecolor и backcolor следует удалить, чтобы использовать стиль.

Можно установить, например, forecolor на элементе при использовании условного выражения для явного выделения forecolor для этого элемента. Но обычно вся окраска будет происходить с условным стилем.

EDIT

Как Alex K отметил, убедитесь, что условный стиль также устанавливает mode="Opaque":

<style name="tab_page_4" mode="Opaque"> 
    .... 
</style> 

Или, если использовать условные стили:

<conditionalStyle> 
    <conditionExpression>...</conditionExpression> 
    <style mode="Opaque" .../> 
</conditionalStyle> 
+0

У меня есть режим удаления, forecolor и backcolor от элемента нечетные строки не появляются –

1

постановляет ошибку следуя примечаниям @Alex K и @ Tobi6

код моего IReport теперь так:

<style name="tab_page_4"> 
     <conditionalStyle> 
      <conditionExpression><![CDATA[$V{REPORT_COUNT}%2 == 1]]></conditionExpression> 
      <style mode="Opaque" forecolor="#00597C" backcolor="#E7ECF4"/> 
     </conditionalStyle> 
     <conditionalStyle> 
      <conditionExpression><![CDATA[$V{REPORT_COUNT}%2 == 0]]></conditionExpression> 
      <style mode="Opaque" forecolor="#00597C" backcolor="#FFFFFF"/> 
     </conditionalStyle> 
    </style> 

И в своей стихии:

<reportElement key="textField" style="tab_page_4" x="0" y="0" width="105" height="25" uuid="4ea6f9a0-d1c8-42f0-8ae4-7c9780fcfe3d"/> 
Смежные вопросы