Install4j 如何在向后遍历时隐藏屏幕

Install4j 如何在向后遍历时隐藏屏幕,install4j,Install4j,我在Install4J项目中定义了多个屏幕 假设我有3个屏幕,称为: “屏幕1” “屏幕2” “屏幕3” 屏幕2的配置如下所示: 激活后脚本: context.getWizardContext().setControlButtonVisible(ControlButtonType.NEXT, false); context.getWizardContext().setControlButtonVisible(ControlButtonType.PREVIOUS, false); contex

我在Install4J项目中定义了多个屏幕

假设我有3个屏幕,称为:

  • “屏幕1”
  • “屏幕2”
  • “屏幕3”
屏幕2的配置如下所示: 激活后脚本:

context.getWizardContext().setControlButtonVisible(ControlButtonType.NEXT, false);
context.getWizardContext().setControlButtonVisible(ControlButtonType.PREVIOUS, false);
context.goForward(1, true, true);
目前的情况如下:

  • 我在“屏幕1”中,单击“下一步”
  • Install4J跳转到“屏幕2”。这里的Postactivationscript隐藏了Back和Next按钮,并为我单击了“Next”
  • 我在“第三屏”
  • 到目前为止,这是我所期望的行为

    按照我当前配置的原样和不需要的行为描述

    如果我现在单击“屏幕3”中的“后退”按钮,Install4J将跳回“屏幕2”,但Postactivationscript将立即将我跳回“屏幕3”

    我现在的问题是:

    我必须改变什么,才能让我的行为如此随波逐流

    *如果我现在单击“屏幕3”中的“后退”按钮,Install4J将在返回时跳过“屏幕2”,并显示“屏幕1”

    所以我想在向前遍历时显示“屏幕2”,在向后遍历时隐藏它。这可能吗


    根据Install4J帮助,有些方法似乎能够完成我的任务,但如何使用它们以及在何处使用它们,以及如何配置“Screen 2”以在向后遍历时隐藏?

    这确实是一个很好的用例,目前还没有为可配置表单提供。在7.0.4中,我们将添加一个“可以访问屏幕”属性,该属性可以设置为“仅使用下一步按钮”。请联系support@ej-technologies.com获得一个已经实现的构建。

    我想知道为什么“Postactivation Script”字段中的以下几行会阻止反向遍历。context.getWizardContext().setControlButtonVisible(ControlButtonType.NEXT,false);context.getWizardContext().setControlButtonVisible(ControlButtonType.PREVIOUS,false);goForward(1,true,true);这些行在“屏幕2”中定义。启用这些功能后,我很遗憾无法从“屏幕3”跳到“屏幕1”,尽管我已经为“屏幕2”设置了“仅使用下一步按钮”。我需要无人值守地处理“屏幕2”,不能跳过它。我该怎么办?用当前的版本,这对我来说很有用。用同样的脚本。安装后,请查看日志文件.install4j\installation.log。返回时,您会在日志中看到类似于
    [INFO]com.install4j.runtime.beans.screens.FormScreen[ID 1565]:命令:使用历史记录返回1个屏幕,然后不应激活跳过的屏幕。您是否从较旧版本的install4j上可能使用的命令行版本编译项目?请道歉。似乎我使用了新的Install4J GUI,但我的构建脚本使用了旧的。事实上,这对我这边的这个小例子是有效的。我会尽量把它应用到实际项目中去。再次感谢你的帮助!