如何使用 JavaFX 创建 VBox?
javafxobject oriented programmingprogramming更新于 2025/4/14 2:22:17
创建应用程序所需的所有节点后,您可以使用布局来排列它们。布局是计算给定空间中对象位置的过程。JavaFX 在 javafx.scene.layout 包中提供了各种布局。
VBox
在 vbox 布局中,节点排列在单个垂直列中。您可以通过实例化 javafx.scene.layout.VBox 类在应用程序中创建 hbox。您可以使用 setPadding() 方法设置 hbox 周围的填充。
要将节点添加到此窗格,您可以将它们作为构造函数的参数传递,也可以将它们添加到窗格的可观察列表中 −
getChildren().addAll();
示例
import javafx.application.Application; import javafx.geometry.HPos; import javafx.geometry.Insets; import javafx.scene.Scene; import javafx.scene.control.CheckBox; import javafx.scene.control.Label; import javafx.scene.control.Separator; import javafx.scene.layout.VBox; import javafx.scene.paint.Color; import javafx.scene.text.Font; import javafx.scene.text.FontPosture; import javafx.scene.text.FontWeight; import javafx.stage.Stage; public class VBoxExample extends Application { public void start(Stage stage) { //创建复选框 CheckBox checkBox1 = new CheckBox("Hindi"); CheckBox checkBox2 = new CheckBox("Gujarathi"); CheckBox checkBox3 = new CheckBox("Punjabi"); CheckBox checkBox4 = new CheckBox("Telugu"); CheckBox checkBox5 = new CheckBox("Tamil"); CheckBox checkBox6= new CheckBox("Malayalam"); //创建标签 Label label = new Label("选择已知语言:"); Font font = Font.font("verdana", FontWeight.BOLD, FontPosture.REGULAR, 12); label.setFont(font); //创建分隔符 Separator sep = new Separator(); sep.setMaxWidth(80); sep.setHalignment(HPos.CENTER); //将复选框和分隔符添加到窗格 VBox vBox = new VBox(5); vBox.setPadding(new Insets(5, 5, 5, 50)); vBox.getChildren().addAll(label, checkBox1, checkBox2, checkBox3, checkBox4, checkBox5, checkBox6); //在第 3 个复选框后添加分隔符 vBox.getChildren().add(4, sep); //设置舞台 Scene scene = new Scene(vBox, 595, 200, Color.BEIGE); stage.setTitle("VBox Example"); stage.setScene(scene); stage.show(); } public static void main(String args[]){ launch(args); } }