![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
| Результаты опроса: Способ ввода текста оптимален?если нет,то прошу предложить свой способ в комментариях | |||
| Оптимален |
|
1 | 25.00% |
| Нет |
|
3 | 75.00% |
| Можно лучше,но и такой подойдёт |
|
0 | 0% |
| Голосовавшие: 4. Вы еще не голосовали в этом опросе | |||
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
нужна программа которая в заданную область экрана вводит заданный текст.
перехожу на сайт,используя данную команду: WinExec('"C:\Users\123\AppData\Loca l\Google\Chrome \Application\chrome.exe" http://www.ya.ru/',SW_show); далее пытаюсь в адресную строку ввести какой-либо запрос вот так: wnd:=FindWindow('Chrome_WidgetWin_0',nil); if wnd <>0 then begin wnd1:=FindWindowEx (wnd,0,'Chrome_RenderWidgetHostHWND',nil); SetWindowText(wnd1,'www.ya.ru'); end; однако ничего не происходит,хотя цикл выполняется.не понимаю в чём ошибка.буду признателен за помощь) |
|
#2
|
||||
|
||||
|
Так в заданную область экрана или в некий абстрактный контрол?
|
|
#3
|
|||
|
|||
|
вообще желательно в абстрактный,потому что 2 экрана и координаты соответственно меняются)
|
|
#4
|
||||
|
||||
|
Если в абстрактный то SetWindowText не во всех случаях работать будет. Можешь еще попробовать послать сообщение WM_SETTEXT, но тоже не факт что сработает.
|
|
#5
|
|||
|
|||
|
Цитата:
|
|
#6
|
||||
|
||||
|
Примерно так:
Код:
wnd:=FindWindow('Chrome_WidgetWin_0',nil);
if wnd <>0 then
begin
wnd1:=FindWindowEx (wnd,0,'Chrome_RenderWidgetHostHWND',nil);
SendMessage(and1,WM_SETTEXT,0,Integer(PChar('Some text')));
end; |
|
#7
|
||||
|
||||
|
Цитата:
|