JPopupMenu не должно терять фокус - PullRequest
0 голосов
/ 02 июня 2010

Вопрос о поведении JPopupMenu. Я бы хотел, чтобы JPopupMenu не потерял фокус, когда он появится. Также, когда JPopupMenu находится в фокусе, пользователь должен иметь возможность щелкать / обновлять другие части апплета.

Возможно ли это? Причина в том, что это JPopupMenu отображает некоторые коды, и его нужно держать открытым для справки.

Это то, что у меня сейчас, но как только пользователь нажимает на основной апплет JPopupMenu теряет фокус:

JPopupMenu popupMenu = new JPopupMenu();
popupMenu.show(component, x, y);

спасибо за вашу помощь.

Ответы [ 2 ]

1 голос
/ 02 июня 2010

Не используйте JPopupMenu для этой цели.

Вы можете использовать немодальный JDialog в качестве "всплывающего окна". Сделайте диалог неокрашенным, и граница не будет окрашена. Убедитесь, что вы указали владельца при создании диалога. Вы можете использовать метод SwingUtilities.windowForComponent (..), чтобы получить окно, которое будет использоваться в качестве владельца.

0 голосов
/ 02 июня 2010

«Точный жест, который должен вызывать всплывающее меню, зависит от внешнего вида». См. Отображение всплывающего меню для получения подробной информации о том, как сделать это независимо от платформы. Кроме того, рассмотрите расширение JApplet вместо Applet.

...