javafx mouseEvent

public class EffectTest extends Application {
Path path;
  @Override
  public void start(Stage primaryStage) {
    Group root = new Group();
    Scene scene = new Scene(root, 300, 250);

    path = new Path();
    path.setStrokeWidth(1);
    path.setStroke(Color.BLACK);

    scene.setOnMouseClicked(mouseHandler);
    scene.setOnMouseDragged(mouseHandler);
    scene.setOnMouseEntered(mouseHandler);
    scene.setOnMouseExited(mouseHandler);
    scene.setOnMouseMoved(mouseHandler);
    scene.setOnMousePressed(mouseHandler);
    scene.setOnMouseReleased(mouseHandler);

    root.getChildren().add(path);
    primaryStage.setScene(scene);
    primaryStage.show();
  }

  EventHandler<MouseEvent> mouseHandler = new EventHandler<MouseEvent>() {

    @Override
    public void handle(MouseEvent mouseEvent) {
      if (mouseEvent.getEventType() == MouseEvent.MOUSE_PRESSED) {
       // path.getElements().clear();
        path.getElements()
            .add(new MoveTo(mouseEvent.getX(), mouseEvent.getY()));
      } else if (mouseEvent.getEventType() == MouseEvent.MOUSE_DRAGGED) {
        path.getElements()
            .add(new LineTo(mouseEvent.getX(), mouseEvent.getY()));
      }else if  (mouseEvent.isAltDown()||mouseEvent.isSecondaryButtonDown()||mouseEvent.isMiddleButtonDown()) {
          
          
          path.getElements().clear();
        //path.getElements().add(new LineTo(mouseEvent.getX(), mouseEvent.getY()));
      }

    }

  };
  
  
  
}
//  
原文地址:https://www.cnblogs.com/rojas/p/4724278.html