我正在尝试使用JavaFX创建一个简单的应用程序。

我要创建一个Choicebox,并在激活Choicebox时-表示是否选择了任何值-我希望代码继续运行。

这正在工作:

if ( choicebox.getSelectionModel().isEmpty()){ DO SOMETHING }


为什么相反不起作用? :

if (! choicebox.getSelectionModel().isEmpty()){ DO SOMETHING }


编辑:
我有两种布局。一个代表选择框,一个代表一组复选框。我要完成的是,仅当激活选择框/选择一个值时,复选框才应出现。

    if (! choicebox.getSelectionModel().isEmpty()){
    secondLayout.setVisible(true);
    }

最佳答案

尝试这个:

ChoiceBox<String> cb = new ChoiceBox(....);
secondLayout.visibleProperty().bind(Bindings.createBooleanBinding(() -> cb.getValue() != null, cb.valueProperty()));


或者,您可以执行以下操作:

secondLayout.visibleProperty().bind(Bindings.isNotNull(cb.valueProperty()));

关于java - Javafx Choicebox-如何检查是否已选中/已激活,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43410312/

10-09 06:47