Install4j 使用目录选择器后如何重新初始化标签?

Install4j 使用目录选择器后如何重新初始化标签?,install4j,Install4j,今天,我创建了一个定制的目录选择器scrren,其中包含一个目录选择器组件和一个显示可用磁盘空间的标签。标签有一个初始化脚本,用于计算可用磁盘空间并将值设置为标签。还选中了“重置初始化…”复选框。如果我退一步,回到我的自定义屏幕,效果会很好。但是,如果我使用目录选择器选择一个目录,则标签不会重新初始化。对于chosser组件,我实现了一个验证脚本,该脚本的第一个操作是调用formEnvironment.reinitializeFormComponents()。我想,在我选择了目录之后,也会触发验

今天,我创建了一个定制的目录选择器scrren,其中包含一个目录选择器组件和一个显示可用磁盘空间的标签。标签有一个初始化脚本,用于计算可用磁盘空间并将值设置为标签。还选中了“重置初始化…”复选框。如果我退一步,回到我的自定义屏幕,效果会很好。但是,如果我使用目录选择器选择一个目录,则标签不会重新初始化。对于chosser组件,我实现了一个验证脚本,该脚本的第一个操作是调用
formEnvironment.reinitializeFormComponents()。我想,在我选择了目录之后,也会触发验证,而不必单击“下一步”按钮,就像对我的描述一样。是否有其他方法重新初始化标签?

事实上,当屏幕显示时,初始化脚本只运行一次。在您的情况下,必须从目录选择器的验证脚本更新标签文本。您可以通过以下方式访问标签:

((JLabel)formEnvironment.getFormComponentById("123").
    getConfigurationObject()).setText("new text");

嗯,我想避免代码重复,但目前这是唯一的办法。这个解决方案对我有效。也许重新初始化这个组件可以成为下一个版本的一个功能?我已经将它添加到我们的问题跟踪程序中