我有一个FXML文档,其中包含我的JavaFX项目的可视化基础,我想通过使用窗格创建一个自己的Topbar(其中X,最小/最大等等)。但我的程序将有多个页面(场景)并保持代码干净,我想将Custom-Topbar作为一个单独的类(一个组件对象有点)。我只是不知道如何将这个类实现到我使用的FXML基础中(我使用的是Scene Builder)。
答案 0 :(得分:0)
选项1
如果工具栏始终在那里,您可以拥有带工具栏和容器的主fxml文件。 然后从其他fxmls加载内容并将该内容放入容器中。切换页面切换容器的内容(而不是场景)。
选项2
仅使用工具栏创建fxml文件。然后使用其他fxmls中的<fx: include />
标记来包含工具栏。这就像一个“组件”。
修改:这是选项2在实践中的工作方式。
Say toolbar.fxml
是仅包含工具栏的fxml文件的名称。
只需在另一个fxml文件中包含<fx:include source="toolbar.fxml"/>
即可包含该位置的工具栏。有关详细信息,请参阅here。