我在JavaFX应用程序中有一个未修饰的阶段。为了最小化它,我需要一个最小化按钮。我在fxml document
中创建了我的布局,其minimize button
,但是当我尝试使用action listener
最小化使用位于控制器内的此按钮的stage.setIconified(true)
时,它无法找到阶段。
如何在控制器类中找到对舞台的引用?
答案 0 :(得分:4)
您可以尝试:
button.setOnAction(e -> {
((Stage)((Button)e.getSource()).getScene().getWindow()).setIconified(true);
});
答案 1 :(得分:0)
解决方案编号1是ItachiUchiha发布的内容。
解决方案2只是在控制器中创建一个setter方法,并为控制器提供舞台本身。
答案 2 :(得分:0)
使用此
Stage stage = (Stage) Minimize.getScene().getWindow(); stage.setIconified(true);