Java-робот с Azerty против Qwerty
Я надеюсь, что это недубликат, но яМы прочесали форумы и пока не нашли ни одного ответа.
У меня проблемы с моим Java-приложением, использующим класс Robot для ввода текста. Текст предоставляется, и приложение печатает его. Когда у пользователя QWERTY-клавиатура, все работает нормально. Когда у пользователя есть клавиатура AZERTY, значения выводятся неправильно.
Например кормление1234567890" в типы программного обеспечения "& é" '(§è! çà "I'
Я надеюсь, что у некоторых есть идея, как поддерживать несколько раскладок клавиатуры. Заранее спасибо.
Вот фрагмент
String TRANSLATION_SHIFT = "~!@#$%^&*()_+{}|:\"?";
String TRANSLATION_NON_SHIFT = "`1234567890-=[]\\;',./";
Robot robot = new Robot();
String text = "1234567890";
int key;
for (char c: text.toCharArray()){
switch(c){
....
case '0':
key = KeyEvent.VK_0;
break;
case '1':
key = KeyEvent.VK_1;
break;
...(etc etc)...
case '9':
key = KeyEvent.VK_9;
break;
...
}
robot.keyPress(key);
robot.keyRelease(key);
}
Там также есть код, чтобы