BIRT:调整单元格宽度时如何自动调整最后一列的宽度
Posted
技术标签:
【中文标题】BIRT:调整单元格宽度时如何自动调整最后一列的宽度【英文标题】:BIRT: How to autofit width of last column when adjusting cell width 【发布时间】:2014-08-28 15:45:49 【问题描述】:我目前正在处理需要对齐最右侧列的报告。
我发现了一份报告,我想复制其中当我调整整个组的单元格宽度时,其中的最后一列单元格也会调整。
我尝试比较这两个报告的属性以了解要调整的正确值,但没有运气。
下面是它们的样子:
当我调整单元格宽度时,我应该怎么做才能自动调整单元格内表格中的最后一列?
报告 1(正确行为):
Reprt 2(不正确的行为):
【问题讨论】:
这可能取决于报表属性“自动布局”或“固定布局”。 示例中的报告 1 和报告 2 都在固定布局上 【参考方案1】:使用鼠标。
这次成功了。真的。
我用数字给出了确切的宽度,结果很糟糕。
我刚刚阅读了您的答案,然后用鼠标抓住了该列 - 最终宽度相同,但它有效!可能输入机制有BUG...
【讨论】:
【参考方案2】:基本上,在 BIRT 中处理列宽很容易:
1) 网格/表格具有宽度属性。只要您在设计器中使用鼠标更改任何列宽,BIRT 就会设置此属性。 网格/表格宽度属性可以为空(可以在属性编辑器中清除)。在这种情况下,BIRT 会使用所有可用的宽度。
2) 每列都有一个宽度属性。只要您在设计器中使用鼠标更改任何 列的宽度,BIRT 就会为所有 列设置此属性。某些列的列宽属性可以为空(可以在列的属性编辑器中清除)。在这种情况下,BIRT 计算网格/表格的宽度(参见 1)并减去那些指定宽度的列的宽度。未指定宽度的列均摊剩余宽度。
3) 对于同一网格/表格的不同列宽,避免将单位“%”与绝对单位(如“pt”)混合。
4) 除非您知道自己在做什么(像素的大小是多少?),否则避免使用单位“px”。
5) 避免指定总和 >= 表格/网格宽度的列宽。
记住规则1中的“在这种情况下,BIRT使用available with”这句话。可用宽度来自容器(布局结构树中的父元素)。 以此类推,递归地,直到你到达 body 元素的宽度。 对于 PDF 和 Word Emitter,此宽度取决于母版页宽度和边距。
对于 html 输出,我不知道 body 元素的宽度是多少。可能,它是未定义的。 就个人而言,我从不使用 HTML 发射器,所以在这里我无法为您提供帮助。
而且报表属性“自动布局”或“固定布局”肯定会起作用。对于 PDF 和 Word 输出,应使用“固定布局”。
【讨论】:
以上是关于BIRT:调整单元格宽度时如何自动调整最后一列的宽度的主要内容,如果未能解决你的问题,请参考以下文章