编程语言
首页 > 编程语言> > JavaFX – 可重用的FXML组件

JavaFX – 可重用的FXML组件

作者:互联网

我正在使用Scene Builder构建GUI,我的大多数场景都有一个共同的元素(底部是iOS类型的主页按钮).
我想知道是否可以在单独的fxml文件中定义此组件.根据我进行的研究,存在一个类似的过程,用于声明可重用组件,但仅在同一个fxml文件中.
我怎么能将这个原则应用于几个fxml文件?

解决方法:

你可以这样做:

<AnchorPane xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.example.MainController">
<children>
<fx:include fx:id="someId" source="NestedFXML.fxml"/>
</children>
<AnchorPane xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.example.NestedFXMLController">
</AnchorPane>

控制器类:

public class MainController implements Initializable {

    @FXML
    private NestedFXMLController someIdController;

    @Override
    public void initialize(URL location, ResourceBundle resources) {
    // TODO Auto-generated method stub

    }
}
public class NestedFXMLController implements Initializable {

    @Override
    public void initialize(URL location, ResourceBundle resources) {
    // TODO Auto-generated method stub

    }
}

不错:嵌套控制器可以通过FXML注释注入.字段名称必须与fx:id属性字符串“Controller”匹配!

标签:java,user-interface,javafx,fxml,scenebuilder
来源: https://codeday.me/bug/20190608/1199240.html