Jasper reports 在一个频带中有多行时,拉伸数据溢出的行

Jasper reports 在一个频带中有多行时,拉伸数据溢出的行,jasper-reports,Jasper Reports,我的需求使我在一个“详细信息”栏中有多行 现在我在最左边的列中有一个静态文本字段(以彩色突出显示),旁边有三个文本数据字段 在我的报告中,我想要的是,当三个带区中的任何一个带区的数据溢出时,静态文本带区以及三个带区应该在高度上拉伸,并且下一行“正确”显示在拉伸的行下方。“正确”是指下一行元素的“顶部”值应相同,并显示在同一行中 我尝试将“Stretch with overflow”标志设置为“true”,将“Position”设置为“float”,但问题是下一行数据的位置不正确。我找到了答案。解

我的需求使我在一个“详细信息”栏中有多行

现在我在最左边的列中有一个静态文本字段(以彩色突出显示),旁边有三个文本数据字段

在我的报告中,我想要的是,当三个带区中的任何一个带区的数据溢出时,静态文本带区以及三个带区应该在高度上拉伸,并且下一行“正确”显示在拉伸的行下方。“正确”是指下一行元素的“顶部”值应相同,并显示在同一行中


我尝试将“Stretch with overflow”标志设置为“true”,将“Position”设置为“float”,但问题是下一行数据的位置不正确。

我找到了答案。解决方案的关键是将行中的元素分组在一起

  • 删除所有静态文本标签。改为使用文本字段,文本用引号括起来。它们可以与其他文本字段和数据字段分组
  • 将所有数据字段放在引用文本字段之后,与引用文本字段位于同一组中
  • 现在,对要显示的所有行执行相同的操作。单独一行的单独组
  • 选择组中的所有元素,或选择所有组中的所有元素,然后执行以下操作:

    • 将“位置”设置为“浮动”
    • 将“拉伸类型”设置为“相对于最高对象”
    • 选中“详细信息溢出时打印”复选框
    • 选中“溢出拉伸”复选框
    这就是我们所能做的,让事情“伸展”在一起


    现在,乐队必须用这些拉伸的细节动态拉伸。只需转到标注栏属性,将“拆分类型”设置为“默认”,并将“允许拆分”设置为true。这对我来说是个好办法。

    在我的情况下,按照你的建议去做是行不通的。我不得不稍微修改一下您的解决方案-我制作了一个的“框架”,而不是对对象进行分组,并将先前分组的元素放在该框架中。我在该框架中设置了positionType=“Float”和stretchType=“No stretch”,并将其子项设置为stretchType=“relativeTotallesObject”,然后一切正常。

    以防有人遇到此问题,而上述答案不起作用。我建议检查xml的根元素。如果它具有以下属性,则将其删除:

    printOrder="Horizontal"
    
    那么以上的答案应该有效


    希望我能帮别人省下一天的时间用谷歌搜索同样的东西。

    我有答案,但我不能在这个评论框中发布,字符限制。我也不能回答,因为我在问了8个小时这个问题后找到了答案,StackOverflow不允许我回答。如果有人问了一个类似的问题,我就可以回答。相反:你不能在前8小时内回答。现在试一试。我遇到了和我在这里提到的相同的问题。在我的情况下,我希望标签的样式不同,例如粗体标签。如果我将静态文本与“Name:+F{Name}这样的字段放在一起,那么如何单独格式化标签呢。另外,你能给我们看一些你是如何对元素进行分组的截图吗?Thanks@Ali,抱歉,我现在无法访问Jasper,但我相信这可以通过Properties box完成。这必须是非常容易的,因为即使在我的例子在这里,我已经使标签粗体。我没有在这些帖子中提到这一点,因为这太简单和明显了。我的列标题在标题行中的高度不同。解决方案是为我的
    内的每个
    标记添加
    stretchType=“RelativeToBandHeight”
    属性,这些标记都由
    标记括起。谢谢您的回答。如果您添加您的JasperServer版本和其他重要细节,对这里的每个人都会更好;Java:1.7.0;Java HotSpot(TM)64位服务器VM 21.0-b17;系统:Windows7版本。6.1在amd64上工作;Cp1250;pl_pl(ireport);我想就这些。。。