EventHandler на дочернем узле - PullRequest
0 голосов
/ 08 июня 2018

Итак, у меня есть Circle с EventHandler на нем.Когда я запускаю его и нажимаю клавиши, ничего не происходит.

import javafx.application.Application;
import javafx.event.EventHandler;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.input.KeyEvent;
import javafx.scene.shape.Circle;
import javafx.stage.Stage;

public class Test extends Application {

    public static void main(String[] args) {
        launch(args);
    }

    @Override
    public void start(Stage stage) {

        Group root = new Group();
        Scene scene = new Scene(root, 600, 400);
        Circle circle = new Circle(300,200,10);

        circle.setOnKeyPressed(new EventHandler<KeyEvent>() {
            @Override
            public void handle(KeyEvent event) {
                System.out.println("Hello!");
            }
        });

        root.getChildren().add(circle);
        stage.setScene(scene);
        stage.show();
    }
}

Я предполагаю, что это потому, что событие не проходит полностью до Circle.Есть ли способ сделать это или я должен просто поставить EventHandler на Scene вместо?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...