在标准屏幕上编辑 JComponents
Editing JComponents on Standard screens
是否可以在内置标准屏幕上自定义 JComponents?具体来说,我被要求在安装组件屏幕上添加一个 Required Disk Space 标签,该标签会随着选择不同的组件而更新。我可以通过在该屏幕的配置中启用 "Show installation directory chooser" 属性 来显示此标签,但无法找到一种方法来阻止显示目标目录 label/text field/button。 com.install4j.runtime.beans.screens.ComponentsScreen
不是 com.install4j.api.screens.FormPanelContainer
的实例,因此我无法像在自定义屏幕上那样与 FormEnvironment 进行交互。
有没有办法将我自己的动态标签添加到此屏幕或 edit/hide 已经存在的不需要的 JComponents?
从 install4j 6.x 开始,没有自定义代码就无法做到这一点。我认为标准屏幕应该只是由表单组件组成的模板,因此您可以自定义它们。我们可能会执行此 install4j 7,但现在您必须从
派生
com.install4j.runtime.beans.screens.ComponentsScreen
并像这样覆盖 addScreenContent:
@Override
protected void addScreenContent(JPanel panel, GridBagConstraints gc) {
super.addScreenContent(panel, gc);
gc.gridy++;
panel.add(new JLabel("your label"));
}
是否可以在内置标准屏幕上自定义 JComponents?具体来说,我被要求在安装组件屏幕上添加一个 Required Disk Space 标签,该标签会随着选择不同的组件而更新。我可以通过在该屏幕的配置中启用 "Show installation directory chooser" 属性 来显示此标签,但无法找到一种方法来阻止显示目标目录 label/text field/button。 com.install4j.runtime.beans.screens.ComponentsScreen
不是 com.install4j.api.screens.FormPanelContainer
的实例,因此我无法像在自定义屏幕上那样与 FormEnvironment 进行交互。
有没有办法将我自己的动态标签添加到此屏幕或 edit/hide 已经存在的不需要的 JComponents?
从 install4j 6.x 开始,没有自定义代码就无法做到这一点。我认为标准屏幕应该只是由表单组件组成的模板,因此您可以自定义它们。我们可能会执行此 install4j 7,但现在您必须从
派生com.install4j.runtime.beans.screens.ComponentsScreen
并像这样覆盖 addScreenContent:
@Override
protected void addScreenContent(JPanel panel, GridBagConstraints gc) {
super.addScreenContent(panel, gc);
gc.gridy++;
panel.add(new JLabel("your label"));
}