小编RSl*_*wij的帖子

在 JavaFX 的 windows 中将单个阶段带到前面

我正在尝试在 JavaFX 中创建一个舞台,它可以在窗口中弹出到最前面,而主舞台保持最小化。

然而,这只适用于主舞台在屏幕上可见的情况。我曾尝试使用 Modality 使其工作,但随后用户无法与主舞台交互,这不是我想要的。

可以使用以下应用程序重现该问题:

public class MainApp extends Application {

@Override
public void start(Stage stage) throws Exception {
    Scene mainScene = new Scene(new Parent() {});
    Stage mainStage = new Stage();
    mainStage.setScene(mainScene);
    mainStage.show();
    mainStage.setIconified(true);

    Scene popUpScene = new Scene(new Parent() {});
    Stage popUpStage = new Stage();
    popUpStage.setScene(popUpScene);

    Thread.sleep(5000);
    popUp(popUpStage);
}

public static void popUp(Stage popUpStage){
    if (popUpStage.isIconified()) popUpStage.setIconified(false);
    popUpStage.show();
    popUpStage.requestFocus();
    popUpStage.toFront();       
}
Run Code Online (Sandbox Code Playgroud)

}

有没有人有这个问题的答案?

java windows javafx

5
推荐指数
1
解决办法
4336
查看次数

标签 统计

java ×1

javafx ×1

windows ×1