我在一个JavaFX应用程序中有一个未装饰的舞台。为了最小化它,我需要一个最小化按钮。我在一个fxml文档
中创建了我的布局,其中包括一个最小化按钮
,但是当我尝试使用控制器内的此按钮的操作监听器
通过stage.setIconified(true)
进行最小化时,它无法找到阶段。
如何在控制器类中找到对舞台的引用?
你可以尝试:
button.setOnAction(e -> {
((Stage)((Button)e.getSource()).getScene().getWindow()).setIconified(true);
});
解决方案1是由ItachiUchiha发布的。
解决方案2只需在控制器中创建一个setter方法,然后将舞台本身赋给控制器。