JavaFX组合框
时间:2020-01-09 10:36:35 来源:igfitidea点击:
JavaFX ComboBox控件使用户能够从预定义的选项列表中选择一个选项,如果预定义的选项都不与用户要选择的选项匹配,则键入另一个值。 JavaFX ComboBox控件由类javafx.scene.control.ComboBox
表示。这个JavaFX ComboBox教程将说明如何使用ComboBox
类。
创建一个组合框
我们只需创建ComboBox
类的新实例即可创建ComboBox
。这是一个JavaFXComboBox
实例化示例:
ComboBox comboBox = new ComboBox();
向组合框添加选择
我们可以通过获取ComboBox
的项目集合来添加选择,并向其中添加项目。这是一个向JavaFXComboBox
添加选择的示例:
comboBox.getItems().add("Choice 1"); comboBox.getItems().add("Choice 2"); comboBox.getItems().add("Choice 3");
将组合框添加到场景图
为了使ComboBox
可见,必须将其添加到场景图中。这意味着必须将" ComboBox"添加到" Scene"对象或者某些布局组件,然后再将其添加到" Scene"对象。
这是一个示例,显示了如何向场景图添加JavaFXComboBox
:
package com.Hyman.javafx.controls; import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.ComboBox; import javafx.scene.layout.HBox; import javafx.stage.Stage; public class ComboBoxExperiments extends Application { @Override public void start(Stage primaryStage) throws Exception { primaryStage.setTitle("ComboBox Experiment 1"); ComboBox comboBox = new ComboBox(); comboBox.getItems().add("Choice 1"); comboBox.getItems().add("Choice 2"); comboBox.getItems().add("Choice 3"); HBox hbox = new HBox(comboBox); Scene scene = new Scene(hbox, 200, 120); primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { Application.launch(args); } }
运行此示例所产生的应用程序将类似于以下内容:
读取所选值
我们可以通过ComboBox
的getValue()
方法读取所选值。如果未选择任何选项,则getValue()方法将返回null。这是调用getValue()
的示例:
String value = (String) comboBox.getValue();
使ComboBox可编辑
默认情况下,"组合框"不可编辑。这意味着,默认情况下,用户无法自己输入任何内容,而只能从预定义的选项列表中进行选择。要使ComboBox
可编辑,必须调用ComboBox
的setEditable()
方法。这是一个使JavaFXComboBox
可编辑的示例:
comboBox.setEditable(true);
一旦"组合框"是可编辑的,用户可以在"组合框"中输入值。输入的值也可以通过getValue()方法读取,如前所述。