1

我正在开发一个 JavaFX FXML 应用程序。我需要在运行时从控制器类调整窗口大小。

我发现可以通过设置舞台的 maxHeight 和 maxWidth 属性从应用程序类中执行此操作。但是如何在应用程序运行时从控制器类中做到这一点?

4

1 回答 1

4

在控制器类中定义一个按钮并设置它的动作

btn.setOnAction(new EventHandler<ActionEvent>() {
    @Override
    public void handle(ActionEvent event) {
        Stage stage = (Stage) ((Node) event.getSource()).getScene().getWindow();
        // OR, if you define btn as @FXML private Button btn.
        Stage stage = (Stage) btn.getScene().getWindow();
        // these two of them return the same stage
        stage.setWidth(new_val);
        stage.setHeight(new_val);
    }
});

其中 stage 是您的主要(主要)阶段。

于 2012-11-12T11:16:37.657 回答