请注意我想知道如何更改javafxml组合框的选择模式,以便它可以允许多个选择。任何贡献将不胜感激谢谢。从组合框中选择多个项目
1
A
回答
8
您可以试试ControlsFX CheckComboBox(ControlsFX是JavaFX的第三方控件库)。
从CheckComboBox的javadoc刚才复制:
一个简单的UI控件,使得它可以选择一个组合框状的控制范围内的零个或多个项目。每行项目显示一个复选框,每行的状态可以通过检查模型查询。
// create the data to show in the CheckComboBox final ObservableList<String> strings = FXCollections.observableArrayList(); for (int i = 0; i <= 100; i++) { strings.add("Item " + i); } // Create the CheckComboBox with the data final CheckComboBox<String> checkComboBox = new CheckComboBox<String>(strings); // and listen to the relevant events (e.g. when the selected indices or // selected items change). checkComboBox.getCheckModel().getSelectedItems().addListener(new ListChangeListener<String>() { public void onChanged(ListChangeListener.Change<? extends String> c) { System.out.println(checkComboBox.getCheckModel().getSelectedItems()); } }); }
注:JavaFX controls developer lead comments上为JavaFX的内置ComboBox控件:
,你可以把你想要的任何选择模型实例为组合框,但只有一个选择都不会得到支持。我们这样做是为多选并没有真正意义的无剧烈变化的UI和UX,我们想出一个独立的控制可能会在将来开发,以更好地支持这种使用情况
从ControlsFX的CheckComboBox控制是那个单独的控制。
7
我需要类似的东西,这解决了我的问题。
@FXML
public MenuButton menuButton;
......
CheckBox cb0 = new CheckBox("x");
CustomMenuItem item0 = new CustomMenuItem(cb0);
CheckBox cb1 = new CheckBox("y");
CustomMenuItem item1 = new CustomMenuItem(cb1);
item0.setHideOnClick(false);
item1.setHideOnClick(false);
menuButton.getItems().setAll(item0,item1);
相关问题
- 1. 组合框选择项目
- 2. C#组合框选择新项目
- 3. 已选择项目更改组合框
- 4. WPF组合框选择的项目
- 5. 无法选择组合框项目
- 6. 选择所有组合框内的复选框Wpf中的组合框项目
- 7. Excel VBA在多列组合框中选择项目
- 8. 如何选择具有多个按键的特定组合框项目?项目
- 9. 选择同一项目时从组合框中获取事件
- 10. MVVM,WPF:如何在组合框中选择一个项目
- 11. 如何从另一个组合框中删除组合框的选定项目
- 12. 从其他组合框的选定项目填充组合框
- 13. 组合框选择项目时显示重复的项目
- 14. 只选择项目的一部分的组合框项目
- 15. 组合框项目选择与未知项目索引
- 16. 选择框onchange更新多个项目
- 17. JQuery选项删除从多个选择框中选择
- 18. 从组合框上的多个选择中获取值
- 19. 自动从jQuery自动完成组合框中选择一个项目
- 20. 从组合框中选择下一个项目,然后单击按钮Excel VBA
- 21. 从我的组合框中选择一个项目后自动填充表格
- 22. 如何防止组合框从wpf的列表中选择一个项目?
- 23. 如何从组合框1显示特定项目时,我选择从另一个组合框2
- 24. WPF绑定到组合框和选择一个项目
- 25. WPF组合框自动选择如果只有1个项目
- 26. 选择下一个组合框项目后增加数字
- 27. 从GridView列中选择多个列表框项目
- 28. 将多个项目从查询加载到组合框中
- 29. 组合框/列表框选定项目
- 30. 从另一个选择框中选择一个选项框
Combobox和Menubutton是不同的控件。 OP想要一个Combobox。 – 2015-07-29 09:51:10
是的,但它无论如何是一个建设性的答案。我喜欢这个解决方案。 – 2016-02-26 10:27:15
也可以将{CheckBox,CustomMenuItem}组合替换为一个{CheckMenuItem}。代码示例位于[javawiki.sowas.com](http://javawiki.sowas.com/doku.php?id=javafx:combobox-multi-selection)。此外,可以添加一个侦听器,以根据所选项目列表自动重命名MenuButton。例如使用String.join()。 – user824276 2017-08-11 18:18:52