每个FXML只有一个控制器(一个java类),用以响应页面的各种事件,就像html与js的关系。

引入控制器

在JavaFX Scene Builder设计视图中选中视图的根结点(每个视图只有一个根结点),在右边选择“代码”属性面板,第一个属性为“控制器类”,输入类路径,如t1.T1Controller。

使用控制器中的方法

选中视图树(分层结构)中的任意节点,在右边面板选择“代码”属性面板,有很多事件可供设置,其值为控制器中的方法名前面加上一个#。

以下为控制器的代码

package t1;

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

import java.net.URL;

import java.util.ResourceBundle;

import javafx.event.ActionEvent;

import javafx.fxml.FXML;

import javafx.fxml.Initializable;

import javafx.scene.control.Button;

/**

*

* @author root

*/

public class T1Controller implements Initializable {

@FXML

private Button btn1;

@FXML

private Button btn2;

@FXML

private void btn1Action(ActionEvent event) {

System.out.println("You clicked btn1!");

}

@FXML

private void btn2Action(ActionEvent event) {

System.out.println("You clicked btn2!");

}

@Override

public void initialize(URL url, ResourceBundle rb) {

// TODO

}

}

以下为FXML源文件中的配置

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐