代码之家  ›  专栏  ›  技术社区  ›  warrenm

如何检测何时打开新窗口和/或获取打开的窗口列表?

  •  5
  • warrenm  · 技术社区  · 14 年前

    我知道 WindowListener 以及它的ILK,但这些似乎只为您已经有了引用并且可以将侦听器添加到的窗口提供事件。我想知道如何在其他进程创建新窗口时接收回调,或者轮询系统上当前打开的所有窗口的列表。

    我在MacOSX上使用J2SE,但是跨平台的答案是理想的。

    3 回复  |  直到 14 年前
        1
  •  3
  •   Giann    14 年前

    正如上面已经说过的,你只能监视Java应用程序创建的Windows。获取这种信息需要特定于操作系统的开发(JNI)。

        2
  •  1
  •   camickr    14 年前
    Window.getWindows();
    Window.getOwnedWindows();
    Window.getOwnerlessWindows();
    

    但这些只是你的Java应用程序打开的窗口。

        3
  •  0
  •   Lars    14 年前

    我认为这是不可能的,因为JRE背后的沙盒思想。 您只能从自己的进程中“看到”窗口。 但我不确定。