【问题标题】:How to split a table by two columns in FastReport?如何在 FastReport 中将表格拆分为两列?
【发布时间】:2015-09-21 21:04:45
【问题描述】:

我有一个典型的 FastReport 报告,其中包含 MasterData 带内的表格。这张桌子又长又窄,所以我想把它分成两半,把下半部分放在上半部分旁边:

A        A  D
B        B  E
C   ->   C  F
D
E
F

有一个问题 - 桌子上的行高 1-3 行。

我尝试过使用 MasterData.Columns 属性。它的两个问题是:它按行拆分表,使其成为 AB CD EF,这是不可接受的,而且它不考虑行高,所以如果例如行 A 比其他行高,那么之后会有不需要的间隙D 在第二列(尽管有StretchMode = smMaxHeight)。

我的 FastReport 版本是 4.7。

【问题讨论】:

    标签: fastreport


    【解决方案1】:

    FastReport 有两种制作列报表的方法。

    您已经发现了其中一个“带列” - 此方法从左到右然后向下打印带。

    第二种方式是分页列。 使用页面列 FR 打印带直到页面末尾,然后移动到下一列。我认为这种方法正是您正在寻找的。 要制作页面列,只需在报表设计器中双击页面,选择其他选项选项卡并设置要打印的列数。

    【讨论】:

    • 这听起来像是一个很好的解决方案,但是有没有办法考虑可变高度行,所以如果 ABC 行每行 5 厘米,DEF 行只有 1 厘米,那么拆分就像 AB/CDEF . ?
    • 您必须在报告选项中设置“双通道”,并在第一次通过计算高度并填写例如列表(如添加(带线,页面上的高度))。在第二遍时,您必须查看填充值,如果高度太大,请调用 Report.Engine.NewColumn 方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-07
    • 1970-01-01
    • 1970-01-01
    • 2013-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多