如果选择了另一个应用程序,JavaFx还原窗口无法关注mac

时间:2016-05-19 05:58:39

标签: javafx

我在mac OSX 10.10上运行JavaFx应用程序

我正在使用以下方法最小化窗口:

primaryStage.setIconified(true);

然后使用:

恢复窗口
primaryStage.setIconified(false);
primaryStage.requestFocus();
myTextBoxOnStage.requestFocus();

有两种不同的情况:

  1. 如果隐藏了JavaFx窗口,我不会点击任何其他窗口 应用程序,然后使用该方法还原JavaFx窗口 以上,一切都很好。将显示JavaFx窗口,并且组件myTextBoxOnStage具有焦点。
  2. 如果隐藏了JavaFx窗口,那么我点击 另一个应用程序,然后恢复JavaFx窗口,然后虽然我的JavaFx应用程序出现在前面,我点击的上一个应用程序仍然是焦点。
  3. 我正在尝试解决方案#2。

    要检查JavaFx窗口是否正在获得焦点,然后以某种方式丢失它,我安装了一个监听器:

    primaryStage.focusedProperty().addListener((ov, t, t1) -> {
        System.out.println(t1 ? "IN FOCUS!": "NOT IN FOCUS");
    });
    

    然而,在场景#2中,JavaFx窗口永远不会得到焦点。

    任何帮助都将不胜感激。

0 个答案:

没有答案