2015-02-06 3 views
0

Я хочу управлять мышью классом робота. Просто двигайтесь влево или вправо. Тем временем я запускаю затмение с статусом администратора. Вот мой код ниже.Есть ли способ управлять мышью через java?

public class ControlMouse { 
    public static void main(String[] args) { 
     try { 
      Robot robot = new Robot(); 
      Thread.sleep(1000); 
      robot.mouseMove(0, 0); 
      Thread.sleep(1000); 
      robot.delay(1000); // this one is the same... 
      robot.mouseMove(100, 100); 
     } catch (Exception e) { 
      System.out.println("e = " + e.toString()); 
     } catch (Error e) { 
      System.out.println("e = " + e.toString()); 
     } 
    } 
} 

Но кажется, что это не работает и сообщение об ошибке или исключении. Дозировка может дать мне какой-нибудь совет? Спасибо. Среда разработки - это окно 7. И я ожидаю, что смогу увидеть курсор мыши или изменения трассировки. Но я не могу.

+0

Mateusz: ошибка в отсутствии ошибки, курсор просто не двигается. @ apss1943: Вы пробовали с другими coördates? Код мне кажется правильным. – Stultuske

+0

Что вы ожидали? (0,0) В верхнем левом углу экрана ... – Adam

+0

Он работает и для меня, и без ошибок, чем когда-либо. Возможно, вы захотите добавить дополнительные ходы, чтобы вы могли видеть, как курсор перемещается по экрану. – Blaatz0r

ответ

1

Вам нужно будет отложить задержку, а затем проверить. без задержки/сна, иногда Элементы GUI не могут обрабатываться должным образом. Возможно, вы даже пропустите это событие.

class ControlMouse { 
    public static void main(String[] args) { 
     try { 
      Robot robot = new Robot(); 
      Thread.sleep(1000); 
      robot.mouseMove(0, 0); 
      Thread.sleep(1000); 
      robot.mouseMove(100, 100); 
     } catch (Exception e) { 
      System.out.println("e = " + e.toString()); 
     } catch (Error e) { 
      System.out.println("e = " + e.toString()); 
     } 
    } 
} 

Приведенный выше код будет работать. Он переместится на 0,0, а затем на 0,100

+0

он не может работать для меня ... извините – apss1943

+0

@ apss1943 - Что значит * не может работать *? – TheLostMind

+0

Как это отличается от того, что делает OP? – MadProgrammer

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