JavaFX: FXML嵌套和子Controller(Sub-Controller)

JavaFX: FXML嵌套和子Controller(Sub-Controller)

Nested Controllers

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之间进行通信

相关资料

Aimls: JavaFX视频教程第116课,FXML 接着上节课继续讲解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xhBruce

佛系随缘,共同探讨

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值