我已经开始使用 JavaFX(开放的)为 GUI 编写一个应用程序。我遇到了这个问题,这真的让我很烦恼。当我编译我的应用程序时,窗口将出现在后台。
我想要的是,当我编译我的应用程序时,它会显示我将焦点放在那个新窗口上。
我的操作系统是 openSUSE Leap 15.1,Plasma 桌面。
这是我的主要代码,以防万一它可能很重要:
public class Main extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {
Parent root = FXMLLoader.load(getClass().getResource("forms/login/FrmLogin.fxml"));
Scene mainScene = new Scene(root);
primaryStage.setTitle("Login");
primaryStage.setScene(mainScene);
primaryStage.show();
primaryStage.setMinWidth(primaryStage.getWidth());
primaryStage.setMinHeight(primaryStage.getHeight());
primaryStage.setMaxWidth(primaryStage.getWidth());
primaryStage.setMaxHeight(primaryStage.getHeight());
primaryStage.toFront();
}
}
最佳答案
如原帖评论中所述:
我在 Windows 上测试了我的项目,然后在以前版本的 openSUSE 上测试了它,它按预期工作。除了操作系统版本之外,另一个区别是我使用“可移植”版本的 Intellij IDEA 而不是 flatpak 版本,结果发现 flatpak 是问题所在,也许它没有必要的权限来聚焦新窗口
关于java - 构建后聚焦新窗口(Intellij IDEA),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57952425/