iReport 巧用样式


1、window--Style library -- 右键 add  添加style ,设置好了之后。再右键Add Style To Report,然后选中field 时,要style属性中选择自定的样式即可。

右击style 选择“添加”—“Style” , 可以在属性中设置style的各种属性,也可以默认不改;


2、右击style 选择“添加Conditional Style”,添加在各种情况下设置不同的style属性,右击每个Conditional Style 选择“Edit Condition”为每个Condition Style 设置触发条件,比如 $F{username}.length()>10,设置字体Forecolor颜色和大小,其它可以默认即可。


3、在field的style上引用新建style1样式。

4、如果引用样式没有效果,那是style1样式与本来field 的字体大小冲突,还得在xml中删除 field的字体大小。

如下 field  删除 字体大小 size="13",style="style1"引用样式。

 

 <textField isStretchWithOverflow="true" isBlankWhenNull="true">
    <reportElement uuid="1e7d3883-9d23-4013-a964-341f71555ca1" style="style1" stretchType="RelativeToTallestObject" x="69" y="120" width="486" height="491"/>
    <box>
     <rightPen lineWidth="0.75"/>
    </box>
    <textElement>
     <font fontName="仿宋" size="13" isStrikeThrough="false" pdfFontName="STSong-Light" pdfEncoding="UniGB-UCS2-H"/>
    </textElement>
    <textFieldExpression><![CDATA["    "+$F{GRCS}]]></textFieldExpression>
   </textField>


6、样式xml

 

<style name="style1">
		<conditionalStyle>
			<conditionExpression><![CDATA[$F{GRCS}.length()<=2000 && $F{GRCS}.length()>1500]]></conditionExpression>
			<style fontName="仿宋" fontSize="10"/>
		</conditionalStyle>
		<conditionalStyle>
			<conditionExpression><![CDATA[$F{GRCS}.length()<=1500 && $F{GRCS}.length()>1000]]></conditionExpression>
			<style fontName="仿宋" fontSize="12"/>
		</conditionalStyle>
		<conditionalStyle>
			<conditionExpression><![CDATA[$F{GRCS}.length()<=1000]]></conditionExpression>
			<style fontName="仿宋" fontSize="13"/>
		</conditionalStyle>
		<conditionalStyle>
			<conditionExpression><![CDATA[$F{GRCS}.length()>2000]]></conditionExpression>
			<style fontSize="9"/>
		</conditionalStyle>
	</style>


 

 
注:可以设定不同的Condition Style,让报表元素可以根据不同的条件显示不同的状态(控制颜色显示)
用报表去对比不同的数据时,可以使用这个功能,方便将不一致的地方自动根据设定好的条件,用不同的颜色或者其它形式显示出来;
一份报表可以设定多个不同的Style,在给报表的每个元素赋予不同的Style,来达到控制显示的效果;



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值