JavaFX 使用 FXML 来布局和设计用户界面。FXML 是一种基于 XML 的文件格式,用于描述 JavaFX 应用程序的用户界面组件及其属性。要使用 FXML 布局控件,请按照以下步骤操作:
创建 FXML 文件:
在项目的资源文件夹中,创建一个新的 XML 文件,例如 MyLayout.fxml
。在这个文件中,我们将定义控件的布局。
编写 FXML 代码:
在 MyLayout.fxml
文件中,使用 FXML 标签定义控件及其属性。例如,以下代码创建了一个包含 Label 和 Button 的垂直布局:
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.layout.VBox?>
<VBox xmlns:fx="http://javafx.com/fxml" prefHeight="200" prefWidth="300">
<Label text="Hello, JavaFX!" />
<Button text="Click me!" />
</VBox>
加载 FXML 文件:
在 Java 代码中,使用 FXMLLoader
类加载 FXML 文件并将其转换为 Scene
对象。然后,将 Scene
对象设置给 Stage
对象以显示界面。例如:
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.Button;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
public class MyApp extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
FXMLLoader loader = new FXMLLoader(getClass().getResource("MyLayout.fxml"));
Parent root = loader.load();
primaryStage.setTitle("JavaFX FXML Example");
primaryStage.setScene(new Scene(root));
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
运行应用程序: 编译并运行应用程序。你应该能看到一个包含 Label 和 Button 的窗口,它们按照 FXML 文件中的定义进行布局。
通过这种方式,你可以使用 FXML 在 JavaFX 中轻松地布局和设计用户界面。你可以根据需要添加更多的控件和设置它们的属性。要了解更多关于 FXML 的信息,请参阅 JavaFX FXML 文档。