Circle不会在JavaFX中移动位置

时间:2016-12-20 16:13:32

标签: java

我正在创建一个到目前为止都有电池监视器和时钟的小部件。我试图在电池监视器后面添加一个圆圈,使其看起来像电池的形状。我试图改变圆的位置值,但它没有移动。 下图显示了我现在得到的和预期效果

image

以下是我的圆圈代码:

                stack = new StackPane();
                Text text2 = new Text();
                Circle circle = new Circle(10, 10, 10, Color.BLACK);

                batteryBar = new ProgressBar();
                batteryBar.setPrefHeight(27);
                batteryBar.setId("battery");

                stack.getChildren().addAll(batteryBar, text2, circle);
                text2.setFont(new Font("Arial", 15));
                text2.setStyle("-fx-font-weight: bold;");
                text2.setFill(Color.WHITE);

1 个答案:

答案 0 :(得分:1)

您可以使用方法setX()setY()轻松设置圆的X和Y坐标。您还可以考虑setLayoutX()setLayoutY()设置相对于x的{​​{1}}和y坐标

另请注意,此处不能使用Layout。您必须使用StackPane来设置Circle的Panex轴。

这是因为y会覆盖所有StackPanex值。要了解更多相关信息,请查看此Stack-overflow question

这将是您的最终代码: -

y