BIRT:如何在调整单元格宽度时自动调整最后一列的宽度

问题描述 投票:2回答:2

我目前正在处理需要最右边一列对齐的报告。

[我发现了一个报告,我想复制这种行为,当我调整整个组的单元格的宽度时,其中的最后一列单元格也会进行调整。

[我尝试比较这两个报告的属性,以了解要调整的正确值,但是没有运气。

下面是它们的外观:

我应该怎么做才能在调整单元格宽度时自动调整单元格中表格的最后一列?

报告1(正确行为):

“调整单元格宽度还会调整**

重复2(错误行为):

“调整单元格宽度不会调整**

width cell birt adjustment
2个回答
4
投票

基本上,在BIRT中处理列宽很容易:

1)表格/表格具有width属性。在设计器中使用鼠标更改any列宽后,BIRT将立即设置此属性。表格/表格宽度属性可以为空(可以在属性编辑器中清除)。在这种情况下,BIRT使用所有可用宽度。

2)每列都有width属性。在设计器中使用鼠标更改any列宽后,BIRT就会为all列设置此属性。某些列的column width属性可以为空(可以在列的属性编辑器中清除)。在这种情况下,BIRT计算表格/表格的宽度(请参见1),并减去那些指定宽度的列的宽度。未指定宽度的那些列将平均分配剩余宽度。

3)对于同一表格/表格的不同列宽,避免将单位'%'与绝对单位(例如'pt')混合。

4)除非您知道自己在做什么(什么大小是像素,否则避免使用'px'单位。

5)避免指定总和大于等于表/网格宽度的列宽。

请记住规则1中的句子“在这种情况下,BIRT使用available with”。可用宽度来自容器(布局结构树中的父元素)。依此类推,直到递归到body元素的宽度为止。对于PDF和Word Emitter,此宽度取决于母版页的宽度和边距。

对于HTML输出,我不知道body元素的宽度是多少。可能是不确定的。就个人而言,我从不使用HTML发射器,因此在这里我不能为您提供帮助。

并且报表属性“自动版式”或“固定版式”当然起作用。对于PDF和Word输出,应该使用“固定版式”。


0
投票

使用鼠标。

这次成功了。真的。

我用数字给出了确切的宽度,结果很糟糕。

我刚刚阅读了您的答案,而不是用鼠标抓取该列-最终宽度相同,但是有效!输入机制中可能存在一些错误...

© www.soinside.com 2019 - 2024. All rights reserved.