2015-01-31 4 views
-1

Я работаю над приложением, в котором я использую SystemTray. В моем коде все хорошо. Когда я нажимаю значок SystemTray, он показывает мой jFrame в определенном месте. Но я хочу показать свой jFrame чуть ниже моего значка SystemTray. Возможно ли это. Пожалуйста, предложите код для этого. Поскольку я могу показать это в своей ОС (linux), указав правильную координату, но мой код не работает, если я запускаю эту программу в разных ОС или в другой системе размера экрана.Показать JFrame в желаемом месте

+0

* «.. icon it show my' jFrame' в заданном месте. »* Это' JFrame' (заметки) и кто/что дает местоположение? Не обращайте на них внимания, размещайте [MCVE] (http://stackoverflow.com/help/mcve) (все ответы, которые нам нужны). –

+0

Сэр, мне очень жаль, если мой вопрос вас устраивает. – Pankaj

+0

Позвольте мне объяснить свой вопрос и что я хочу. Сэр в моем приложении у меня есть JFrame, который открывается в моей заданной координате, используя 'SetLocation (x, y);'. Но я хочу показать этот JFrame чуть ниже моего значка SystemTray. И, пожалуйста, простите мою грамматическую ошибку. – Pankaj

ответ

0

Насколько я знаю, невозможно получить координаты значка SystemTray на экране с помощью Swing. Другим обходным решением будет захват местоположения мыши при щелчке по значку в трее.

Point p = MouseInfo.getPointerInfo().getLocation(); 
int mouseX = (int) p.getX(); 
int mouseY = (int) p.getY(); 

Помните, что это решение не поможет вам, если вы планируете перейти к значку в трее с помощью клавиатуры.