Есть ли какой-нибудь метод для закрытия Tab
в JavaFX?
Я ищу что-то похожее на то, что доступно для класса Stage
(см. Пример 1).
Пока что единственный известный способ закрыть сквозной код Tab
- это вызвать событие getOnCloseRequest
или getOnClosed
вручную и удалить Tab
из его TabPane
(см. Пример 2).
Пример 1:
private void closeWindow(Stage stage)
{
stage.close();
}
Пример 2
private void closeFirstTab(TabPane tabPane)
{
Tab tab = tabPane.getTabs().get(0);
EventHandler handler = tab.getOnCloseRequest();
if (handler != null)
{
handler.handle(null);
}
}
private void onClose(Event e, TabPane tabPane, Tab tab)
{
if (e != null)
{
e.consume();
}
System.out.println("onClose");
tabPane.getTabs().remove(tab);
}