在标准屏幕上编辑 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"));
}