2012-02-29 58 views
1

如果我直接在Scene元素中使用JavaFX元素(例如,Circle),它可以正確定位。但是,如果我直接將其放在Pane(例如下面的BorderPane)中,則其位置不正確。如何在任何窗格中定位JavaFX形狀?

實施例1(正確地在位置環路(10,10)):

Circle c = new Circle(10,10,15); 
Group g = new Group(c); 
Scene s = new Scene(g,800,600); 
stage.setScene(s); 
stage.show(); 

實施例2(不工作):

Circle c = new Circle(10,10,15); 
Group g = new Group(c); 
BorderPane b = new BorderPane(); 
b.setCenter(g); 
Scene s = new Scene(b,800,600); 
stage.setScene(s); 
stage.show(); 

任何想法?

回答

0

有些窗格處理他們的孩子的位置,無論你設置他們的xy,有些不。如果您想設置職位,您可能需要PaneBorderPane之內。

從窗格API文檔:

這個類可以在,因爲它不執行佈局超出調整 可調整大小的孩子他們的優選尺寸是必需的 兒童的絕對定位的情況下直接使用。應用程序的 負責定位子項,因爲窗格在佈局期間僅離開 職位。

這裏更多:http://docs.oracle.com/javafx/2.0/api/javafx/scene/layout/package-summary.html

+0

現在的工作。謝謝安德魯 – 2012-02-29 23:40:43