Как мне найти все видимые кадры / диалоги в программе?Я мог бы создать подклассы классов JFrame / JDialog для обновления списка видимых в настоящее время окон, но если бы для этого было встроенное решение, это было бы намного лучше
Попробуйте
List<Window> visibleWindows = new ArrayList<Window>(); for(Window w: Window.getWindows()){ if(w.isShowing()){ visibleWindows.add(w); } }
Рекомендации:
getWindows()
isShowing()
Расширение на Ответ Moonbeam .кроме того, вы можете сказать:
Toolikit.getDefaultToolkit().addAWTEventListener()
... и подписаться на все связанные с окном события.В этом случае вы получите информацию о том, что окно создано немедленно.