Loops 安装4J&x27;的默认后退按钮行为与循环不兼容。什么';解决办法是什么?

Loops 安装4J&x27;的默认后退按钮行为与循环不兼容。什么';解决办法是什么?,loops,install4j,Loops,Install4j,有人能解释一下Install4j的后退按钮是如何工作的吗?此时我应该注意到,我使用的是install4j多平台版5.1.2(build 5492) 循环示例 此示例基于包含两个屏幕的屏幕组(“屏幕1”和“屏幕2”) 启动屏幕 屏幕1(在循环组中) 屏幕2(在循环组中) 端屏 屏幕组属性: 循环索引开始:0 循环索引步骤:1 循环表达式:(整数)context.getVariable(“i”)

有人能解释一下Install4j的后退按钮是如何工作的吗?此时我应该注意到,我使用的是install4j多平台版5.1.2(build 5492)

循环示例

此示例基于包含两个屏幕的屏幕组(“屏幕1”和“屏幕2”)

  • 启动屏幕
  • 屏幕1(在循环组中)
  • 屏幕2(在循环组中)
  • 端屏
  • 屏幕组属性:

    • 循环索引开始:0
    • 循环索引步骤:1
    • 循环表达式:(整数)context.getVariable(“i”)<2
    • 循环索引变量名:i
    如预期的那样,反复单击“下一步”会产生以下屏幕流:

  • 启动屏幕
  • 屏幕1(i=0)
  • 屏幕2(i=0)
  • 屏幕1(i=1)
  • 屏幕2(i=1)
  • 屏幕1(i=2)
  • 屏幕2(i=2)
  • 端屏
  • 我希望“后退”按钮可以在上面列出的历史记录中后退。然而,实际行为如下:

  • 端屏
  • 屏幕2(i=3)
  • 屏幕1(i=3)
  • 屏幕1(i=3)
  • 屏幕1(i=3)
  • 启动屏幕
  • 显然,这不是任何理性用户所期望的。使问题进一步复杂化的是,报告包括以下内容:

    修复了返回屏幕历史记录时出现的错误行为 出现了屏幕循环

    本例中提出的另一个问题是,如何在后退时减少循环计数器?当使用循环屏幕组时,似乎没有实际的方法来实现这一点

    如果是这种情况,实现循环的唯一方法是实现您自己的屏幕以覆盖。其副作用是,您必须手工编写屏幕代码,才能获得循环的正确后退按钮行为,这似乎很可笑


    还有其他人找到解决这个问题的好办法吗?install4j手册相当蹩脚,因为“历史”一词只出现一次。后退按钮的工作方式没有任何规范。

    这是一个错误,将在5.1.4中修复。请联系support@ej-technologies.com以获取当前版本的固定版本

    本例中提出的另一个问题是,如何减少 后退时循环计数器?看起来好像没有 使用循环屏幕组时执行此操作的实用方法


    这将在5.1.4中自动运行。

    因为循环功能的行为不符合预期,我现在考虑通过直接操作Install4j项目文件来解决这个问题。例如,如果我有3个数据库要配置,我只需在项目XML中复制所需的屏幕,从而避免了任何循环。这并不理想,但我觉得这是解决这个问题的最简单的方法。谢谢Ingo。正如我所说的,我将同时处理项目XML,因为它还可以避免将UI控件动态绑定到索引属性。