javafx:如何在不关闭新窗口的情况下返回原始应用程序窗口?

时间:2015-10-11 16:00:17

标签: javafx

抱怨问这么简单的问题,但英语不是我的第一语言,所以我找不到正确的词来描述我的问题而且不能谷歌提出正确的问题。

我有一个javafx应用程序,并且有一个按钮,如果用户点击它,它会生成一个新窗口(就像一个显示框,只是为了向用户显示更多信息)。问题是当显示新窗口并且我点击Javafx应用程序的任何地方时,我无法回复它。我必须首先关闭新窗口才能与原始javafx应用程序进行交互。

如何在单击按钮时打开新窗口,同时保留与原始javafx应用程序交互的功能,而无需关闭新窗口?

        Button moreInfo = new Button("More Info");
        moreInfo.setOnAction(e -> {
            MoreInfoDisplayBox.display();
        });

public class MoreInfoDisplayBox {

    public static void display(){
        Stage window = new Stage();
        window.initModality(Modality.APPLICATION_MODAL);
        window.setTitle("More Info");
        window.setMinWidth(400);
        window.setMinHeight(400);
        window.show();
    }
}

1 个答案:

答案 0 :(得分:0)

您描述的行为是通过调用

引起的
window.initModality(Modality.APPLICATION_MODAL);

(见docs。)

相反,只需使用默认值,您可以使用

显式执行此操作
window.initModality(Modality.NONE);

或当然完全省略该行。