JavaFX: FXML嵌套和子Controller(Sub-Controller)
Posted xhBruce
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaFX: FXML嵌套和子Controller(Sub-Controller)相关的知识,希望对你有一定的参考价值。
JavaFX: FXML嵌套和子Controller(Sub-Controller)
FXML嵌套
<fx:include source="menu-layout.fxml"/>
Sub-Controller
JavaFX2.2将嵌套的Controller实例直接映射到外部文档的Controller的成员属性中,使得与嵌套的Controller交互变得更为简单。
(并没有用)
父 app-view.fxml(AppController)
<VBox prefHeight="600.0" prefWidth="900.0" xmlns="http://javafx.com/javafx" xmlns:fx="http://javafx.com/fxml"
fx:controller="org.xhbruce.controller.AppController">
<children>
<fx:include source="menu-layout.fxml"/>
<!-- ... ... -->
</children>
</VBox>
子 menu-layout.fxml(AppMenuController)
<MenuBar VBox.vgrow="NEVER" xmlns="http://javafx.com/javafx"
xmlns:fx="http://javafx.com/fxml"
fx:controller="org.xhbruce.controller.AppMenuController">
<menus>
<Menu mnemonicParsing="false" text="%menu.file" onAction="#onMenuClick">
<items>
<!-- ... ... -->
</items>
</Menu>
<Menu mnemonicParsing="false" text="%menu.edit" onAction="#onMenuClick">
<items>
<!-- ... ... -->
</items>
</Menu>
<Menu mnemonicParsing="false" text="%menu.help" onAction="#onMenuClick">
<items>
<!-- ... ... -->
</items>
</Menu>
</menus>
</MenuBar>
获取子Control
最后还是建立ControllerManager比较方便:JavaFX的Controller之间进行通信
以上是关于JavaFX: FXML嵌套和子Controller(Sub-Controller)的主要内容,如果未能解决你的问题,请参考以下文章