Страницы

Поиск по вопросам

пятница, 13 марта 2020 г.

Java - эмуляция ввода

#java


Можно ли в Java юзать эмуляцию клавиатуры, и как это сделать ? С помощью Robot я
разобрался только как вводить единичные символы - т.е. по одному. Пытаясь сделать это
в цикле - как-то так:

for(char ch:str.toCharArray()){
    robot.keyPress((int)ch);
    robot.keyRelease((int)ch);
}


выходит какая-то ересь. Есть ли какой-нибудь метод, типа someMethod("text"), которой
отправляет в текстбокс переданную ему аргументом строку ? Если кто-то подскажет java
api для Sikuli - тоже буду рад ответу.
    


Ответы

Ответ 1



Сделал так, оказывается, все просто: после того, как курсор оказался в поле для ввода, нужно просто вызвать метод type для объекта Screen и передать ему аргументом нужную строку. И все работает. [sikuli api for java] UPD_0: public class GITest { private Screen _screen; ....... private static final String _user = "user_139"; ....... } private void setPersonalData(){ try{ // сейчас курсор окажется в текстбоксе _screen.click("img/004.png"); // следующая операция - ввод _screen.type(_user); ........ } catch (FindFailed | InterruptedException ex){ _rbuffer.append("One of searching element not find.\n"); writeLogBufferToFile(); System.exit(-1); } }

Комментариев нет:

Отправить комментарий