Rzutowanie na "eventy"

0

Chce napisać metodę w javaFX, gdzie po wciśnieciu odpowiedniego klawisza, będę mógł odczytać położenie myszy na scenie (oknie aplikacji).
Próbowałem zrobić to tak :

scene.addEventHandler(Event.ANY, event -> {

           if(event instanceof KeyEvent)
           {
                if(((KeyEvent)event).getCode() == KeyCode.A)
                {
                    player.setPosition(((MouseEvent)event).getSceneX()-25,((MouseEvent)event).getScreenY()-25);
                }
           }
        });

Kod błędu to :" Exception in thread "JavaFX Application Thread" java.lang.ClassCastException: javafx.scene.input.KeyEvent cannot be cast to javafx.scene.input.MouseEvent ",
nie bardzo rozumiem, dlaczego taks się dzieje, że z kompilator nie miał problemów event rzutować na KeyEvent, a później żeby rzutować na MouseEvent to już nie chce. Może ktoś wie, dlaczego taka sytułacja tutaj występuje i ma pomysł jak rozwiązać ten problem. Z góry dziękuje :)

0

Wcześniej masz warunek sprawdzający czy możesz rzutować na KeyEvent (if (event instanceof KeyEvent)) - nic takiego nie masz przed rzutowaniem na MouseEvent.

Nie możesz sobie ot tak arbitralnie rzutować na co Ci się podoba.

1 użytkowników online, w tym zalogowanych: 0, gości: 1