2016-10-02 274 views
0

確定可以只實現絕對定位假設我想有以下佈局:現在如何在JavaFX(FXML)

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

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

,在HTML我只想通過CSS應用position: absolute和兩個容器中的一個將從正常的文檔流中分離出來,讓它可以在不把兄弟姐妹推到一邊的情況下浮動。我正在嘗試實現類似的功能,但已經有好幾個小時了。

根據Oracle文檔,這可以通過StackPane來實現,我不想因爲我想另一個容器不受影響而使用StackPane),或者我可以使用一個原始的Pane節點,因爲它的基類很好,因此很瘋狂。有關窗格的文件也說:

這個類可以直接在情況下,兒童

和良好的絕對定位的兒童的犯規好聽使用......在我的情況下,它必須是直接的集裝箱。

所以我的問題是:我怎樣才能實現絕對定位沒有太多的數學黑客?

LocalToScene()是我想要的嗎?

將此節點的局部座標空間的邊界轉換爲其場景的座標空間。

回答

1

我的印象是,你仍然在用HTML術語而不是JavaFX術語思考。例如在JavaFX中沒有「正常文檔流程」。所有東西都必須放入某個佈局容器中,並且此容器決定事情的佈局,如果必須直接使用窗格,則沒有任何問題。雖然我不確定你的實際用例是什麼,但我想你可能想看看AnchorPane。

+0

我覺得這個答案非常多。只是一個小問題。任何良好的XML參考,在那裏我可以看到所有可用的FXML標籤和屬性,如對齊,prefWidth等? oracle文檔看起來很差,很難找到javafx代碼的FXML等價物。 – Asperger

+0

此參考文獻http://docs.oracle.com/javafx/2/fxml_get_started/jfxpub-fxml_get_started.htm總結了Oracle提供的可用文檔,並且我不知道任何更好的文檔。一個選項是不直接使用FXML,而是使用SceneBuilder創建視圖。 (從Gluon下載最新的SceneBuilder而不是Oracle!) – mipa

+0

但是我是一個硬編碼器,所以我討厭幫助工具嘿嘿。雅,文件是非常糟糕的,沒有像MDN:D – Asperger