如何在任何窗格中定位JavaFX形状?

时间:2012-02-29 15:22:03

标签: java javafx position

如果我直接在Circle元素中使用JavaFX元素(例如,Scene),它就会正确定位。但是,如果我直接将其放在Pane(例如下面的BorderPane)中,那么它就不会正确定位。

示例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();

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

有些窗格会处理孩子的位置,无论您将xy设置为什么,有些窗格都没有。如果您想设置排名,可能需要Pane内的BorderPane

来自Pane的API文档:

  

此类可以直接用于绝对定位的情况   由于除了调整大小之外它不执行布局,因此需要子级   可调整大小的孩子到他们喜欢的大小这是应用程序的   自窗格离开后,责任定位孩子   布局期间独立的位置。

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