JavaFX 8:FXML的重用
鉴于我有一个FXML表示创建数据记录的表单。如果我仅将此FXML用于CreateRecordController
,我可以直接在FXML中绑定控制器,并使用fx:id
将控件绑定到此控制器。JavaFX 8:FXML的重用
但是,如果我想重复使用此FXML作为EditRecordController
,我该怎么办?我无法在FXML中绑定两个控制器。有没有办法在FXML加载器中执行此绑定?
回答:
在加载fxml之前,您可以将控制器实例传递给FXMLLoader
。这就要求fx:controller
属性是从FXML文件缺失:
Object controller = ... // create an instance of the desired controller class here FXMLLoader loader = new FXMLLoader(getClass().getResource("/some/path/myfxml.fxml"));
loader.setController(controller);
Node root = loader.load();
注:绑定是错误的术语在这里,因为你不分配控制器任何JavaFX的财产。
以上是 JavaFX 8:FXML的重用 的全部内容, 来源链接: utcz.com/qa/266581.html