在JavaFx 2.0中,可以通过以下步骤访问Controller类:
<fx:include>
标签包含一个或多个其他的FXML文件,这些文件可以包含Controller对象。<Controller>
标签定义Controller对象,该对象可以在应用程序中引用。getController()
方法获取Controller对象,该方法返回一个Object对象,该对象可以转换为Controller对象。以下是一个示例代码:
// 创建FXML文件
public class Main extends Application {
@Override
public void start(Stage primaryStage) {
try {
// 创建FXML文件
FXMLLoader loader = new FXMLLoader(getClass().getResource("sample.fxml"));
Parent root = loader.load();
Controller controller = loader.getController();
// 访问Controller对象
Scene scene = new Scene(root, 800, 600);
primaryStage.setScene(scene);
primaryStage.show();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
launch(args);
}
}
// 创建Controller对象
public class Controller {
public void initialize() {
System.out.println("Hello World!");
}
}
在上面的示例中,我们创建了一个名为sample.fxml
的FXML文件,该文件包含一个名为Controller
的Controller对象。在Java代码中,我们使用FXMLLoader类的构造函数加载FXML文件,并将Controller对象作为参数传递给构造函数。然后,我们使用FXMLLoader类的getController()
方法获取Controller对象,该方法返回一个Object对象,该对象可以转换为Controller对象。最后,我们使用Controller对象的initialize()
方法来打印一条消息。
领取专属 10元无门槛券
手把手带您无忧上云