Java awt.Robot: отправить ключ с позицией, например, для. сдвиг вправо или вправо ctrl - PullRequest
2 голосов
/ 07 сентября 2010

Я хочу использовать класс java.awt.Robot для реализации виртуальной клавиатуры.Мне интересно, если есть способ отправить код ключа с расположением ключа (слева или справа), используя метод keyPress(int).Если вы добавите KeyListener к элементу awt, то KeyEvent, вызванный ctrl или shift , будет иметь информацию, если это была левая или правая кнопка.

Документы говорят:

Коды клавиш, с которыми связано более одного физического ключа (например, KeyEvent.VK_SHIFT может означать либо левую, либо правую клавишу Shift), будут отображаться на левую клавишу ".

Но действительно ли нет способа отправить нажатой сдвиг вправо ? Некоторым приложениям (например, VirtualBox) нужны эти правые кнопки (конечно, вы можете настроить эти приложения, но это не так).опция для виртуальной клавиатуры).

Итак ... есть ли способ сделать это с помощью класса Robot? Есть ли альтернативный способ отправки более конкретных событий клавиш в Java?

1 Ответ

0 голосов
/ 09 сентября 2010

После дальнейших поисков я думаю, что java.awt.Robot может быть неправильным выбором. Известны проблемы с отправкой специальных ключей, таких как немецкий язык umlauts, в котором отсутствует код ключа в jvm.

Поэтому я сам отвечаю на этот вопрос: «Нет способа сделать это с классом Robot».

...