如何在Javafx(FXML)中实现绝对定位

时间:2016-10-02 11:37:56

标签: java javafx fxml

好吧,我们假设我想要以下布局:

<GridPane>
    <Button></Button>
    <Button></Button>
<GridPane/>

<HBox>
    <Label></Label>
<HBox/>

现在,在HTML中,我只需通过css应用position: absolute,两个容器中的一个将从正常文档流中解除,从而允许它在不将其兄弟姐妹推到一边的情况下浮动。我正在努力实现类似的东西,但我已经好几个小时了。

根据Oracle文档,这可以通过StackPane实现,我不想要,因为我希望其他容器不受影响)或者我可以使用原始的Pane节点,它以某种方式表现得很疯狂,因为它是一个基类。有关该窗格的文档也说:

此类可以直接用于儿童的绝对定位

以及 的孩子 听起来不太好......在我的情况下,它必须是直接容器。

所以我的问题是:如果不用过多的数学计算,我怎样才能实现绝对定位?

localToScene()可以成为我想要的吗?

将此节点的局部坐标空间中的边界转换为其场景的坐标空间。

1 个答案:

答案 0 :(得分:1)

我的印象是你仍在思考HTML术语而不是JavaFX术语。例如,在JavaFX中没有“正常的文档流程”。一切都必须放入一些布局容器中,这个容器决定了如何布局,如果必须的话,直接使用Pane没有任何问题。虽然我不确定你的实际用例是什么,但我想你可能想看看AnchorPane。