我想知道如何可以与JavaFX的场景生成器结合使用fx:include
,因此:JavaFX的场景生成器和FX:包括
想象我有一个BorderPane
(文件borderpane.fxml
)。在中间部分,我想要放置一个Label
,然而它应该在单独的FXML文件中定义,例如, label.fxml
。
的第一个问题:因为label.fxml
将被集成到一个容器(BorderPane)中,所以它本身不需要一个容器。然而,SceneBuilder仅提供了创建作为容器的布局的选项?
问题二:我可以手动创建label.fxml
,然后手动调整borderpane.fxml
为包括label.fxml
。然后我可以使用SceneBuilder加载borderpane.fxml文件,没有任何问题。然而,当我现在改变标签的文本,并选择“保存”,而不是label.fxml
被修改,而是将borderpane.fxml
被修改如下:
# borderpane.fxml
<fx:include source="label.fxml" text="the new label text" />
新的标签文本应写入label.fxml
,不borderpane.fxml
,目前正在做什么。
我做错了什么?
SceneBuilder不打算与fx结合使用:include?
我想单独的控制器为我的GUI部分,我认为这是相当逻辑/正常,所以这个实际的使用场景有希望以某种方式支持SceneBuilder?
不错的解释,但有一个问题:如果您包含fxml文件,您不能将它拖入场景构建器中,以便将其放到应用程序中的任何位置! – SlimenTN 2015-07-18 15:15:26