📜  javafx fxml 加载器示例 - 汇编(1)

📅  最后修改于: 2023-12-03 14:42:22.124000             🧑  作者: Mango

JavaFX FXML加载器示例 - 汇编

在JavaFX中,我们可以使用FXML文件定义用户界面,将其与控制器类连接并通过JavaFX FXML加载器来加载。FXML加载器将FXML文件加载到界面上,将FXML文件中的控件与控制器类中对应的属性和方法绑定起来。本文将介绍JavaFX FXML加载器的示例代码。

加载FXML文件

使用FXML加载器加载FXML文件需要以下步骤:

  1. 创建FXML加载器实例

    FXMLLoader loader = new FXMLLoader();
    
  2. 设置FXML文件路径

    String fxmlPath = "path/to/fxml/file.fxml";
    loader.setLocation(getClass().getResource(fxmlPath));
    
  3. 加载FXML文件并获取根节点

    Parent parent = loader.load();
    

对以上步骤的代码示例:

FXMLLoader loader = new FXMLLoader();
String fxmlPath = "path/to/fxml/file.fxml";
loader.setLocation(getClass().getResource(fxmlPath));
Parent parent = loader.load();
操作FXML中的控件

加载FXML文件后,我们可以通过FXML加载器获取FXML文件中定义的控件,对这些控件进行操作。

获取控件

如果在FXML文件中定义了控件的fx:id,我们可以通过FXML加载器获取对应的控件:

Button button = (Button) loader.getNamespace().get("button");

也可以直接在控制器类中使用@FXML注解定义控件的属性,FXML加载器会自动将控件的属性值绑定到控制器类中相应的属性上:

@FXML
private Button button;
绑定事件

在FXML文件中定义控件的事件处理,然后在控制器类中实现事件处理方法:

FXML文件中定义事件处理:

<Button fx:id="button" onAction="#handleButtonAction" text="Click me!" />

控制器类中实现事件处理方法:

@FXML
private void handleButtonAction(ActionEvent event) {
    // 事件处理代码
}
更新控件属性值

使用FXML加载器获取控件后,我们可以根据需要更新控件的属性值:

button.setText("New text");

以上就是JavaFX FXML加载器的示例代码,我们可以使用这些代码实现JavaFX用户界面。