Как я могу определить, когда открываются новые окна, и / или получить список открытых окон? - PullRequest
5 голосов
/ 14 октября 2010

Мне известно о WindowListener и подобном ему, но они, похоже, предоставляют события только для окон, на которые у вас уже есть ссылка, и которые могут добавить слушателя. Мне интересно, как либо получить обратный вызов при создании новых окон другими процессами, либо опросить список всех окон, открытых в настоящее время в системе.

Я использую J2SE в Mac OS X, но кроссплатформенный ответ идеален.

Ответы [ 3 ]

3 голосов
/ 25 октября 2010

Как уже было сказано выше, вы можете отслеживать только окна, созданные Java-приложениями. Получение такого рода информации потребует разработки под конкретную ОС (JNI).

1 голос
/ 14 октября 2010
Window.getWindows();
Window.getOwnedWindows();
Window.getOwnerlessWindows();

Но это только Windows, открытая вашим Java-приложением.

0 голосов
/ 22 октября 2010

Я думаю, что это невозможно из-за идеи песочницы, стоящей за JRE. Вы можете только «видеть» Windows из своего собственного процесса. Но я точно не знаю.

...