在JavaFX中标记为自定义按钮? (使用FXML)

时间:2018-06-14 21:49:54

标签: java javafx fxml

我有一个FXML文档,其中包含我的JavaFX项目的可视化基础,我想通过使用窗格创建一个自己的Topbar(其中X,最小/最大等等)。但我的程序将有多个页面(场景)并保持代码干净,我想将Custom-Topbar作为一个单独的类(一个组件对象有点​​)。我只是不知道如何将这个类实现到我使用的FXML基础中(我使用的是Scene Builder)。

1 个答案:

答案 0 :(得分:0)

选项1

如果工具栏始终在那里,您可以拥有带工具栏和容器的主fxml文件。 然后从其他fxmls加载内容并将该内容放入容器中。切换页面切换容器的内容(而不是场景)。

选项2

仅使用工具栏创建fxml文件。然后使用其他fxmls中的<fx: include />标记来包含工具栏。这就像一个“组件”。

修改:这是选项2在实践中的工作方式。

Say toolbar.fxml是仅包含工具栏的fxml文件的名称。

只需在另一个fxml文件中包含<fx:include source="toolbar.fxml"/>即可包含该位置的工具栏。有关详细信息,请参阅here