Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Сгенерировать системное событие..


Автор: Kurt 24.1.2004, 19:54
Как можно эмулировать системное событие?
Например, программно нажать клавишу или передвинуть мышь?
Я имею ввиду сгенерировать сообщение:
"нажата клавиша F1".
Для ВСЕЙ системы, а не только для моего приложения..

Автор: AntonSaburov 25.1.2004, 13:47
Это очень ОС-зависимая ситуация, потому IMHO без JNI не обойтись. Но как это делается програмно уже native-кодом лучше спросить в других форумах - Delphi или C++.

Автор: Kurt 6.2.2004, 17:53
Мне кто-то сказал, что для этого применяют java.awt.Robot..
Честно говоря, первый раз слышу о таком звере - но я новичок..
Может, кто из спецов знает?..
Как-то и доки не получается найти..

Автор: Kurt 6.2.2004, 20:01
О! Народ, гляньте:
Методы робота:
Код
public void mouseMove(int x, int y) - передвинуть мышь
public void mousePress(int buttons) - нажать кнопку мыши
public void keyPress(int keycode) - как Вы понимаете, нажать клавишу


Мне кажется, это решение, если не всех, то ОЧЕНЬ многих проблем, связанных с кроссплатформенностью!!!
Кому интересно, вот линк, к-й я нашел:
http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Robot.html.

Тут и мышь, и клавиатура, и рабочий стол!
Великолепно!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)