2014-11-13 4 views
0

Мне нужно получить абсолютное местоположение мыши после щелчка по экрану. Я уже искал в Интернете, но единственное решение, которое я нашел использует этот метод:JAVA - Получить мышь, когда мышь нажата

MouseInfo.getPointerInfo().getLocation() 

который получает позицию независимо от мыши.

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

Как я могу это решить?

+0

Вам нужно будет перевести относительное положение, связанное с компонентом, в абсолютные координаты – DThought

+0

проблема заключается в том, что у меня нет компонента, потому что мне нужно получить координаты точки на экране (в частности, на окно браузера) – SegFault

+1

Вы можете создать прозрачное окно, охватывающее интересующий вас регион и перехватывая щелчки мыши. Может быть, [это] (http://stackoverflow.com/q/20118196/2711488) помогает. – Holger

ответ

2

Это зависит от ОС. Насколько я понимаю ваш вопрос, у вас нет графического интерфейса или вы не хотите добавлять слушателя в свои компоненты графического интерфейса. JVM получит только клики для компонентов, связанных с ним.

Здесь вы должны написать собственный код для привязки к событиям, которые вы хотите по своему усмотрению, или вы должны использовать библиотеку, такую ​​как jnativehook, которая делает то же самое для вас, и вам не нужно писать код для Linux, Mac OS X и Windows.

Смежные вопросы