2016-07-10 3 views
0

Я использую WatiN, чтобы заполнить форму на веб-сайте. Однако автозаполнение текстовых полей работает только в том случае, если я на самом деле беру мышь и нажимаю на текстовое поле. Я пробовал использовать Select(), Click() и TypeText(), и во всех этих случаях автозаполнение формы не срабатывает.Имитация фактического перемещения мыши и нажмите с WatiN

С кем это столкнулось? Как я могу обойти это? Я предполагаю, что функция автозаполнения запускается JavaScript, но если бы я мог просто подражать «правильному» движению мыши и щелчку, этого было бы достаточно для меня.

ответ

1

Перемещение мыши не зависит от Ватина, для этого вам необходимо использовать Windows API calls. Но функция автозаполнения - это реализация браузера, а не javascript, поэтому она зависит от каждого веб-браузера. Если вы все еще хотите кликнуть на него с помощью Windows API, это сделает. Имейте в виду, что перемещение мыши не так просто, как кажется, поскольку вы должны учитывать, что страница была ТОЧНО (она зависит от разных разрешений, если страница находится в маленьких окнах и т. Д., Есть API, чтобы найти точное местоположение)

+0

Какой API я могу использовать для определения местоположения элемента управления на веб-странице? Я полагаю, что у WatiN есть что-то для этого. –

+0

Это Windows API, а не Watin. Все становится для вас «интересным», если у вас есть это, вы можете применить эту «технику» для других элементов управления (Flash-ролики и т. Д.) Http://stackoverflow.com/questions/18034975/how-do -i-find-position-of-a-win32-control-window-relative-to-its-parent-window есть некоторая работа, которая должна быть выполнена, но это определенно работает, и она очень надежна. – ProgrammerV5

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