Как я могу обработать нажатие кнопки, которая находится в другой кнопке в JavaFX? - PullRequest
0 голосов
/ 26 апреля 2019

Я только что сделал кнопку, которая имеет HBox внутри кнопки. И когда я нажимаю внутри кнопки, внешняя кнопка также нажата. Я просто хочу, чтобы одну кнопку можно было нажать сразу. Как я могу справиться с этими кнопками?

Это код контроллера JavaFX.

Button b = new Button();
Button front = new Button("Stop");
front.setPrefWidth(50);
front.setOnAction((e) -> {
    System.out.println("front click");
});
HBox h = new HBox();
h.getChildren().addAll(front);
b.setGraphic(h);

b.setOnAction((e) -> {
        System.out.println("back click");
});

и когда я запускаю этот код и когда я нажимаю кнопку на передней панели, результат

front click
back click
front click
back click
front click
back click
front click
back click
front click
back click
front click
back click

когда я нажимаю переднюю кнопку, тоже нажимается кнопка назад. как я могу справиться с этим?

1 Ответ

2 голосов
/ 26 апреля 2019

Event Consume должно работать.

front.setOnAction((e) -> {
    System.out.println("front click");
    e.consume();
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...