如何使用 JavaFX 创建 ComboBox?
javafxobject oriented programmingprogramming更新于 2025/4/14 8:52:17
组合框类似于选择框,它包含多个项目,并允许您选择其中之一。它可以通过在下拉列表中添加滚动来形成。您可以通过实例化 javafx.scene.control.ComboBox 类来创建组合框。
示例
以下示例演示了 ComboBox的创建。
import javafx.application.Application; import javafx.collections.ObservableList; import javafx.geometry.Insets; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.control.ComboBox; import javafx.scene.control.Label; import javafx.stage.Stage; import javafx.scene.layout.HBox; import javafx.scene.paint.Color; import javafx.scene.text.Font; import javafx.scene.text.FontPosture; import javafx.scene.text.FontWeight; public class ComboBoxExample extends Application { public void start(Stage stage) { //设置标签 Label label = new Label("Select Desired Course:"); Font font = Font.font("verdana", FontWeight.BOLD, FontPosture.REGULAR, 12); label.setFont(font); //创建组合框 ComboBox<String> combo = new ComboBox<String>(); //设置组合框的提示文本 combo.setPromptText("Select Course"); //获取组合框的可观察列表 ObservableList<String> list = combo.getItems(); //向组合框添加项目 list.add("Java"); list.add("C++"); list.add("Python"); list.add("Big Data"); list.add("Machine Learning"); HBox hbox = new HBox(15); //设置 HBox 窗格节点之间的空间 hbox.setPadding(new Insets(75, 150, 50, 60)); hbox.getChildren().addAll(label, combo); //创建场景对象 Scene scene = new Scene(new Group(hbox), 595, 280, Color.BEIGE); stage.setTitle("Combo Box"); stage.setScene(scene); stage.show(); } public static void main(String args[]){ launch(args); } }