ActionEvent上的JavaFX动态添加/删除节点

ActionEvent上的JavaFX动态添加/删除节点,java,javafx,Java,Javafx,我构建了一个简单的JavaFX应用程序,当鼠标进入椭圆时,我不想在椭圆的中心创建一个圆 以下是一些代码: ellipse = new Ellipse(30,30,40,40); ellipse.setFill(Color.TRANSPARENT); ellipse.setStroke(Color.BLACK); ellipse.setOnMouseEntered(event -> { Circle circle = new Circle(); circle.setCent

我构建了一个简单的JavaFX应用程序,当鼠标进入椭圆时,我不想在椭圆的中心创建一个圆

以下是一些代码:

ellipse = new Ellipse(30,30,40,40);
ellipse.setFill(Color.TRANSPARENT);
ellipse.setStroke(Color.BLACK);

ellipse.setOnMouseEntered(event -> {
    Circle circle = new Circle();
    circle.setCenterX(30);
    circle.setCenterY(30);
    circle.setFill(Color.GREEN);
    group.getChildren().add(circle);
    group.getChildren().removeAll(ellipse);

    System.out.println("Added Circle");
});

group = new Group();
group.getChildren().add(ellipse);
vBox = new VBox();
vBox.getChildren().add(group);
Vbox将添加到场景,场景将添加到PrimaryStage

如果我运行程序,鼠标进入椭圆,椭圆将被删除,但圆不会被添加

谁能解释一下原因吗? 首先,这似乎是实现动态节点添加/删除的错误方法。正确的方法是什么?
但我也很感兴趣的是,为什么我可以如此轻松地删除节点,但却不能如此轻松地添加节点?

我错了,圆没有半径。。。 如果我在圆中添加半径,一切正常,

请回答您的问题,并包括一个演示您的问题的半径。