iReport问题总结,控件被其他控件覆盖的问题

xu.wang

发布于 2018.03.13 22:37 阅读 2904 评论 0

问题:

控件按照垂直方向放置时会出现,位于上面的控件覆盖下面的控件,导致下面控件不显示的情况。

上图中,红色位置应该有边框线,但是被“确认结果”的控件遮挡导致下面的控件显示不全甚至不显示。

解决:参考地址: http://blog.csdn.net/u010509052/article/details/52297607

这个问题一直困惑了我很久:

我们做的报表有很多行(textfield),每页的最后一行如果特别大(textfield里面的文字超过4行),就会显示不下这个textfield的底边和第4行后的内容,而在下一页,也只有第5行的内容,第四行不翼而飞stretch type3种都用过了,一样出问题。这个textfield是放在detail band中的。

今天终于找到解决:

这个问题你需要进行两步属性设置:
1.在textfield的属性里面将stretch With OverFlow选上(最好是所有的textfield都选上,因为不不能确定每个
  textfield的值的高度对吧,这样可以以防万一),这个选项的意思是说:在内容过多时,会自动纵向拉伸
2.在stretch type中选择 relative to Tallest Object ,记住是每个textfield都这么设置,不然,就会出现,只   有你设置了这个属性的textfield会向下自动拉伸,其他的以自己的内容,自适应高度

如果以上设置都不行。那你试试以下方式:

=============================================================================

iReport stretch 选项的注意
Text Field有一选项为Stretch with overflow。 作用是动态的伸展文字所占的空间。
要注意一点是Stretch是跟据Font Name的体字像数为基准进行伸展的。所以当我们输出PDF格式时要注意PDF Font Name 与Font Name是否一致。如不一致在文字量多的时候会出现少了或多了显示空间的问题

(Font设置为宋体,PDF Font设置为STSong-Light,PDF Font encoding设置为UniGB-UCS2-H (Chinese Simplified) 后顺利解决)
iReport Band的[Split allowed]属性
Split allowed是允许分开的意思。以页为单位,被分离出去的是Band内的所有内容。如果剩下的页面空间不够显示Band的内容。那么Band的内容会显示在下一页。


ireport有时侯不能显示数据库中数据的解决方式:
  1)每一个element:设置:print when details overflow ;stretch overflow
  2)字段高度不够 
******************************************************=======================