Добрый день.
Есть такая проблема. В элементах WebEdit необходимо вводить данные имитируя нажате клавиатуры, элементы на странице не разблокируется при использовании .Set
Пробывал
Set MyWebEdit = Browser("").Page("").WebEdit("").Object
MyWebEdit.focus
MyWebEdit.SendKey "UTRO"
Ругается при любом использовании Type, PressKey
Также пробывал Browser("").Page("").WebEdit("").Type micLAltUp
на .Activate тоже ругается
Не подскажете что я делаю не так или Как правильно можно имитировать нажатия клавиш в браузере
Версия 10.0 пробная, включены аддоны ActiveX, VisualBasic,Web
Прошу извинить если вопрос тупой, только изучаю продукт и уперся в эту проблему .
QTP[10]>Не могу добиться нажатие клавишь с клавиатуры
Автор Sting.sk, 24 сен 2009 09:46
Сообщений в теме: 2
#1
Отправлено 24 сентября 2009 - 09:46
"I aspire, sir, to be better than I am"
#2
Отправлено 24 сентября 2009 - 10:14
Насколько я понял, у вас при вводе значение должны выполняться какие-то действия на странице (разблокируется что-то). Вероятно, что это реализуется путем обработки каких-то событий у нужного input.
Соответвенно, необходимо принудительно сэмулировать вызов нужных событий (по исходному коду страницы можно определить, что обрабатывается) - для этого у QTP-объектов есть метод fireEvent (детально описан в хелпе) или можно использовать работу с native-объектами (как вероятно и пытаетесь делать вы):
Вот приблизительный фрагмент (нужные события выберите сами)
А sendKeys - это метод объекта WScript.Shell, причем вводимое значение зависит от текущего языка, пример выше можно записать типа так:
Соответвенно, необходимо принудительно сэмулировать вызов нужных событий (по исходному коду страницы можно определить, что обрабатывается) - для этого у QTP-объектов есть метод fireEvent (детально описан в хелпе) или можно использовать работу с native-объектами (как вероятно и пытаетесь делать вы):
Вот приблизительный фрагмент (нужные события выберите сами)
Set objEdit = Browser("Google").Page("Google").WebEdit("q").object objEdit.value = "u" objEdit.fireevent("onchange") objEdit.fireevent("onkeypress") objEdit.fireevent("onkeydown") objEdit.fireevent("onkeyup")
А sendKeys - это метод объекта WScript.Shell, причем вводимое значение зависит от текущего языка, пример выше можно записать типа так:
set WshShell = CreateObject("WScript.Shell") Call Browser("Google").Page("Google").WebEdit("q").object.focus() WshShell.SendKeys "u"
#3
Отправлено 12 октября 2009 - 09:03
Спасибо
"I aspire, sir, to be better than I am"
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных