JavaFX - 最小化舞台的按钮

JavaFX - Button to minimize the stage

我在 JavaFX 应用程序中有一个未修饰的阶段。为了最小化它,我需要一个最小化按钮。我在具有 minimize buttonfxml document 中创建了我的布局,但是当我尝试使用 stage.setIconified(true) 将位于控制器内部的按钮的 action listener 最小化时,它找不到舞台。

如何在控制器中找到对舞台的引用 class?

你可以试试:

button.setOnAction(e -> {
    ((Stage)((Button)e.getSource()).getScene().getWindow()).setIconified(true);
});

解决方案 1 是 ItachiUchiha 发布的内容。

解决方案 2 只是在控制器中创建一个 setter 方法,并为控制器提供舞台本身。

用这个 Stage stage = (Stage) minimize.getScene().getWindow(); stage.setIconified(true); // minimize can be any element in that scene