Как вывести окно на фронт? - PullRequest
86 голосов
/ 21 ноября 2008

У нас есть Java-приложение, которое необходимо вывести на передний план, когда механизм телеуправления что-то активирует в приложении.

Чтобы получить это, мы реализовали в вызываемом методе класса, который представляет фрейм нашего приложения (расширение JFrame), следующую реализацию:

setVisible(true);
toFront();

В Windows XP это работает при первом вызове, во второй раз мигает только вкладка на панели задач, рамка больше не выходит вперед. То же самое касается Win2k. На Vista, кажется, работает нормально.

У вас есть идеи?

Ответы [ 11 ]

0 голосов
/ 21 ноября 2008

В javadoc имеется множество предостережений для метода toFront (), который может вызывать вашу проблему.

Но я все равно придумаю, когда "только вкладка на панели задач мигает", приложение было свернуто? В этом случае может применяться следующая строка из Javadoc:

«Если это окно видно, оно выводится на передний план и может сделать его сфокусированным.»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...