Change Color Using a Mouse

less than 1 minute read

The code has been modified slightly and now uploaded to the site.

Question

<— Return Home

FXColor.java

import javafx.application.Application;
import javafx.event.EventHandler;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.input.MouseEvent;
import javafx.scene.layout.Pane;
import javafx.scene.paint.Color;
import javafx.scene.shape.Ellipse;

public class FXColor extends Application{
    private Ellipse circle;
    private Pane root;
    @Override
    public void start(Stage stage){
        root = new Pane();
        root.setPrefSize(500, 500);

        Ellipse circle = new Ellipse(250, 250, 50, 50);
        circle.setFill(Color.BLUE);

        root.getChildren().addAll(circle);

        MousePressedHandler mousePressedHandler = new MousePressedHandler();
        root.setOnMousePressed(mousePressedHandler);

        MouseReleasedHandler mouseReleasedHandler = new MouseReleasedHandler();
        root.setOnMouseReleased(mouseReleasedHandler);

        Scene scene = new Scene(root);
        stage.setScene(scene);
        stage.setTitle("Exercise15_07");
        stage.show();
    }

    private class MousePressedHandler implements EventHandler<MouseEvent>{
        @Override
        public void handle(MouseEvent e){
            circle = new Ellipse(250, 250, 50, 50);
            circle.setFill(Color.RED);
            root.getChildren().addAll(circle);
        }
    }

    private class MouseReleasedHandler implements EventHandler<MouseEvent>{
        @Override
        public void handle(MouseEvent e){
            circle = new Ellipse(250, 250, 50, 50);
            circle.setFill(Color.BLUE);
            root.getChildren().addAll(circle);
        }
    }
    public static void main(String[] args){
        launch(args);
    }
}

<— Return Home