Недавно я начал изучать Java FX и хочу создать собственную метку, внутри которой будет ImageView.
Это код для моей пользовательской метки.
Image image = new Image(getClass().getResourceAsStream("/img/remove.png"), 20, 20, true, true);
ImageView removeImageView = new ImageView(image);
Label customLabel = new Label(labelText, removeImageView);
customLabel.setFont(Font.font("Arial", FontWeight.BOLD, 20));
Вот так выглядит моя индивидуальная этикетка.
Теперь я хочу добавить щелчок мышью EventHandler в ImageView. Это мой код для обработки щелчков мыши.
removeImageView.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent event) {
System.out.println("Imageview Clicked");
}
});
Но когда я нажимаю на изображение cross
, событие не фиксируется.
Я немного поэкспериментировал и попытался добавить EventHandler в файл customLabel
. Метка смогла зафиксировать щелчок мыши.
Мне кажется, что я столкнулся с этой проблемой, потому что ImageView содержится в метке. Я хочу знать, является ли это ограничением для JFX или есть какой-либо альтернативный способ достижения этой функциональности. Спасибо.
ImageView removeImageView = new ImageView(image);
- person Rito   schedule 30.09.2018