2011-12-16 3 views
1

Есть ли способ получить координаты мыши по щелчку рабочего стола, я не хочу щелкнуть внутри рамки java, хотите сразу же щелкнуть указатель мыши на рабочем столе и знать координаты x, y? пожалуйста, помогите мне? (окна)Как получить x, y позицию при нажатии мыши из кадра?

Rectangle rectScreenSize = new Rectangle(x1,y1,x2,y2);
BufferedImage biScreen = robot.createScreenCapture (rectScreenSize);

наконец хочу передать координаты прямоугольника, чтобы определить размер экрана для класса робота?

+0

* Может вы знаете, где я щелкая на моем мониторе/Desktop * Ответ же? для вашего вопроса. –

+0

@HarryJoy У вас есть ссылка на эту тему? –

+0

Я сомневаюсь, что это возможно, так как я думаю, что ОС будет использовать клик за рамкой Java, чтобы дать контроль над тем, что вы нажмете. Я не знаю точно, и я подожду, чтобы посмотреть, что могут сказать другие. – toto2

ответ

2

Вы можете сделать прозрачный, не декорированный JFrame поверх всего, и передать щелчок с помощью класса Robot.

Кстати, следующее не работает за пределами вашего собственного окна (я надеялся):

Toolkit.getDefaultToolkit().addAWTEventListener(new AWTEventListener() { 

     @Override 
     public void eventDispatched(AWTEvent event) { 
      System.out.println("event: " + event); 
      if (event.toString().contains("MOUSE_EXITED")) { 
       System.out.println("mouse_exited"); 
      } 
     } 
    }, AWTEvent.MOUSE_EVENT_MASK); 
+0

спасибо Eggen ... но все же здесь, я надеюсь, вам нужно щелкнуть по кадру, чтобы получить координаты. – jcrshankar

+0

@jcrshankar um ... можете ли вы повторить этот комментарий с надлежащим английским языком, пожалуйста? – Supuhstar

+0

, когда я щелкнул мышью внутри рамки, получая значение x, y, но когда я щелкнул мышью на окне (вне кадра), я не могу получить его значения. – jcrshankar

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