В Java AWT у нас есть возможность добавить HierarchyListener
для получения событий изменения иерархии от компонента, когда изменяется иерархия, к которой принадлежит этот контейнер. Получив HierarchyEvent
(событие, которое указывает на изменение иерархии Component
, к которому принадлежит Component
), мы можем прослушать следующие события изменения:
- События изменения иерархии (HierarchyListener)
- Добавление предка
- Удаление предка
- Иерархия сделана отображаемой
- Иерархия сделана недоступной для просмотра
- Иерархия, отображаемая на экране (видимая и отображаемая)
- Иерархия, скрытая на экране (невидимая или не отображаемая)
- События изменения предка (HierarchyBoundsListener)
- Размер предка был изменен
- Перемещение предка
Пример кода:
JPanel panel = new JPanel();
panel.addHierarchyListener((event) -> {
if((event.getChangeFlags() & HierarchyEvent.HIERARCHY_CHANGED) != 0) {
// hierarchy tree changed
}
});
Как прослушать события такого же типа в JavaFX? Например, как я могу получить уведомление, когда любой из предков Node
отображается или скрывается в JavaFX?