0

我正在开发一个 JavaFX 应用程序,该应用程序将有几个选项卡窗格,我想使用复选框将其设置为可见或隐藏,该复选框将发送布尔标志以呈现或不呈现组件。

复选框

final CheckMenuItem toolbarSubMenuNavigation = new CheckMenuItem("Navigation");
    toolbarSubMenuNavigation.setOnAction(new EventHandler<ActionEvent>()
    {
        @Override
        public void handle(ActionEvent e)
        {

            // call here the getter setter and send boolean flag
            System.out.println("subsystem1 #1 Enabled!");
        }
    });

将侦听布尔属性的选项卡窗格:

public boolean renderTab;

public boolean isRenderTab()
{
    return renderTab;
}

public void setRenderTab(boolean renderTab)
{
    this.renderTab = renderTab;
}

tabPane.setVisible(renderTab);

复选框和选项卡窗格被隔离到不同的 Java 类中。每次选中或取消选中标志时,我都需要发送标志的值。你能告诉我如何使用 getter 和 setter 发送标志吗?

编辑

我测试了这段代码:

final CheckMenuItem toolbarSubMenuNavigation = new CheckMenuItem("Navigation");
        toolbarSubMenuNavigation.setOnAction(new EventHandler<ActionEvent>()
        {
            @Override
            public void handle(ActionEvent e)
            {
                boolean dcd = toolbarSubMenuNavigation.isSelected();

                DataTabs nn = new DataTabs();
                nn.setRenderTab(dcd);
                // call here the getter setter and send boolean flag
                System.out.println("subsystem1 #1 Enabled!");
            }
        });

public boolean renderTab;

    public boolean isRenderTab()
    {
        return renderTab;
    }

    public void setRenderTab(boolean renderTab)
    {
        this.renderTab = renderTab;
    }

但是当我切换复选框时它不起作用。

4

1 回答 1

1

不。

为了得到那个你需要有一个实例或者你需要在那里创建新的实例。

如果您在那里创建一个新对象,它将创建一个新的实例,这对您没有任何帮助..

我想您唯一的方法是将其设为renderTab静态字段并访问那里。

于 2013-06-25T20:01:41.413 回答