摇摆获取可见框架

5

我该如何在程序中找到所有可见的框架/对话框? 我可以子类化JFrame / JDialog类以更新当前可见窗口列表,但如果有内置解决方案,那将会更好。

2个回答

13

尝试一下

List<Window> visibleWindows = new ArrayList<Window>();
for(Window w: Window.getWindows()){
    if(w.isShowing()){
        visibleWindows.add(w);
    }
}

参考资料:

  1. getWindows()方法
  2. isShowing()方法

2
进一步说,扩展Moonbeam's answer。另外,您可以说:

Toolikit.getDefaultToolkit().addAWTEventListener()

...并订阅所有与窗口相关的事件。在这种情况下,您将立即获得窗口创建的信息。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接