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()方法读取,如前所述。

