我有以下.fxml文件:
<fx:root type="javafx.scene.layout.VBox" xmlns:fx="javafx.com/fxml">
<Pane VBox.vgrow="ALWAYS">
<!-- ... -->
</Pane>
</fx:root>
但是,VBox.vgrow="ALWAYS"
出现错误,因为<fx:root ...
并不完全是VBox。我怎么能在FXML(没有Java)中做到这一点?
编辑:我的IDE中的错误显示“此处不允许使用属性VBox.vgrow”,Java应用程序提供的错误是“VBox.vgrow不是有效属性。”
答案 0 :(得分:1)
我忽略了显示我.fxml文件的所有导入(只有javafx.scene.layout.Pane
)。
为了使该特定.fxml文件不会出错(请参阅编辑),还必须添加导入javafx.scene.layout.VBox
,因为VBox.*
不能用于任何元素,除非导入VBox
。
正确的.fxml文件是:
<?import javafx.scene.layout.Pane?>
<?import javafx.scene.layout.VBox?>
<fx:root type="javafx.scene.layout.VBox" xmlns:fx="javafx.com/fxml">
<Pane VBox.vgrow="ALWAYS">
<!-- ... -->
</Pane>
</fx:root>