gpt4 book ai didi

Javafx 在显示对话框后退出全屏

转载 作者:行者123 更新时间:2023-12-05 04:08:04 26 4
gpt4 key购买 nike

当我显示一个对话框时,全屏模式总是退出。我检查了 Windows、Linux 和 Mac OS 中的代码。所有给出相同的结果。 如何防止退出全屏。请帮我解决这个问题。

如果这行不通,我必须将平台 javafx 更改为其他一些技术来完成我的项目:(

public class JavaFxFullScreen extends Application {

@Override
public void start(Stage primaryStage) {
Button btn = new Button();
btn.setText("Say 'Hello World'");
btn.setOnAction(new EventHandler<ActionEvent>() {

@Override
public void handle(ActionEvent event) {
showAlert();
}
});

StackPane root = new StackPane();
root.getChildren().add(btn);

Scene scene = new Scene(root, 300, 250);

primaryStage.setTitle("Hello World!");
primaryStage.setScene(scene);
primaryStage.setFullScreen(true);
primaryStage.show();
}

public void showAlert() {
Alert alert = new Alert(Alert.AlertType.INFORMATION);
alert.setTitle("Information Dialog");
alert.setHeaderText("Look, an Information Dialog");
alert.setContentText("I have a great message for you!");

alert.showAndWait();
}

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
launch(args);
}}

最佳答案

您需要将 Alert 的所有者设置为您应用程序的主要阶段。

public void showAlert(Stage owner) {
Alert alert = new Alert(Alert.AlertType.INFORMATION);
alert.setTitle("Information Dialog");
alert.setHeaderText("Look, an Information Dialog");
alert.setContentText("I have a great message for you!");
alert.initOwner(owner); // This sets the owner of this Dialog

alert.showAndWait();
}

然后在您想要显示警报时传递对主要阶段的引用。

public void start(Stage primaryStage) {
Button btn = new Button();
btn.setText("Say 'Hello World'");
btn.setOnAction(new EventHandler<ActionEvent>() {

@Override
public void handle(ActionEvent event) {
showAlert(primaryStage);
}
});

StackPane root = new StackPane();
root.getChildren().add(btn);

Scene scene = new Scene(root, 300, 250);

primaryStage.setTitle("Hello World!");
primaryStage.setScene(scene);
primaryStage.setFullScreen(true);
primaryStage.show();
}

关于Javafx 在显示对话框后退出全屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48100375/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com