Mouse Evento Java

1 resposta
javafx
A

Fiz algo parecido com isso:

public EventHandler mouseMove = (MouseEvent event) -> {

System.out.println(Movendo);

};

public EventHandler mouseDown = (MouseEvent event) -> {

System.out.println(Apertou);

};

public Canvas canvas = new Canvas(100,100);

<a class="mention" href="/u/override">@Override</a>

public void start(Stage primaryStage) {

StackPane root = new StackPane();

root.getChildren().add(canvas);
root.addEventHandler(MouseEvent.MOUSE_MOVED, mouseMove);
    root.addEventHandler(MouseEvent.MOUSE_PRESSED, mouseDown);
    Scene scene = new Scene(root, 720, 480);
    
    primaryStage.setTitle("Teste");
    primaryStage.setScene(scene);
    primaryStage.show();
}

Minha pergunta é:
Quando o botão do mouse esta pressionado aparece o “apertou”, porém, mesmo movendo o mouse o “movendo” não aparece (só quando o mouse ta pressionado, quando n ta o “movendo aparece”).

O que fiz ta certo?
Se sim, queria saber se existe alguma maneira que de usar os dois eventos enquanto o mouse esta pressionado.
Se não, me ajudem a consertar isso.

1 Resposta

staroski

MOUSE_MOVED é quando você só está “movendo” o cursor do mouse, ou seja, não há nenhum botão pressionado.

Quando há botão pressionado, você está “arrastando” o cursor do mouse, aí o evento é MOUSE_DRAGGED.

Criado 18 de outubro de 2018
Ultima resposta 18 de out. de 2018
Respostas 1
Participantes 2