java将JavaFXML对象分组在一起
特别描述性和信息性的回答将从我这里获得价值50英镑的赏金强>
我正在用JavaFX开发一个应用程序,对于视图,我使用FXML
<AnchorPane id="AnchorPane" fx:id="dashboard" prefHeight="400.0" prefWidth="600.0" stylesheets="@css/dashboard.css" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.hassanalthaf.telemart.viewmodels.DashboardViewModel">
<children>
<MenuBar maxWidth="600.0" minWidth="600.0" prefWidth="600.0">
<menus>
<Menu mnemonicParsing="false" text="File">
<items>
<MenuItem mnemonicParsing="false" text="Close" />
</items>
</Menu>
<Menu mnemonicParsing="false" text="Help">
<items>
<MenuItem mnemonicParsing="false" text="About" />
</items>
</Menu>
</menus>
</MenuBar>
<AnchorPane fx:id="home" layoutY="29.0" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="371.0" prefWidth="600.0" />
<AnchorPane fx:id="about" layoutY="29.0" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="371.0" prefWidth="600.0" />
<AnchorPane fx:id="users" layoutY="29.0" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="371.0" prefWidth="600.0" />
</children>
</AnchorPane>
正如您所看到的,这个代码段包含一些<AnchorPane>
,ID为home
,about
,users
。这些是我申请的单独页面。要操作这些窗格,我必须将它们注入到我的代码中,如下所示:
@FXML
private AnchorPane home;
@FXML
private AnchorPane about;
@FXML
private AnchorPane users;
这可能看起来很整洁,但当超过20页时,它可能看起来有点凌乱和乏味。是否有任何方法可以以干净高效的方式将它们分组到一个数组或其他东西中
# 1 楼答案
可以使用^{} 和^{} 将元素放置在
List
和场景图中,并将列表注入控制器:控制器