是否有在 javafx 中获取圆形对象颜色的函数?

Is there a function to get a circle object color in javafx?

我在网格窗格中处理圆形对象,我必须通过单击来检查圆形对象的颜色。例如,如果它是蓝色的,则执行一些操作,如果它是红色的,则执行其他操作。

通过鼠标事件获取形状颜色

您可以使用 getFill() 获取它并使用 setFill() 方法更改它并提供一个具体的 Paint 对象作为参数。 这是您可以尝试的单个 class javafx 应用程序。 鼠标事件会将 getFill 打印为字符串 App.java

public class App extends Application {

    @Override
    public void start(Stage stage) {
        Paint defaultColor = Color.AQUA;
        Paint clickColor = Color.YELLOWGREEN;

        Circle circle = new Circle(50, clickColor);
        circle.setOnMouseClicked(e -> {
            if (circle.getFill().equals(defaultColor)) {
                circle.setFill(clickColor);
            }else{
            circle.setFill(defaultColor);}
        System.out.println(circle.getFill().toString());

        });

        Scene scene = new Scene(new StackPane(circle), 200, 200);
        stage.setScene(scene);
        stage.setTitle("changing fill color");
        stage.show();

    }
}