![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#16
|
||||
|
||||
|
Почему, Memo, Edit и тп. имеют собственный хэндл и отлавливаются ф-цией как отдельные окна, главное, чтобы они были на переднем плане. Форму прозрачной я делал через TransparentColor, тогда верхняя форма с точкой "пропускается". Иначе без хуков не обойтись.
|
|
#17
|
||||
|
||||
|
Правильно, но прочитай внимательно первый топик. Ему нужно знать "имя" искомого дочернего окна и тогда: FindWindow, EnumChildWindow.
|
|
#18
|
||||
|
||||
|
Цитата:
"Клаццнул" - кликнул мышью, локализовал, выбрал... Тоесть есть известное окно, в нем есть текстовое поле, в которое нужно передать текст...Цитата:
Цитата:
Только мной описанный способ, никак иначе. Тем более, как я выше писал, это работает. Хэндл запоминаешь сначала, передача нажатия клавиши ENTER там сработает как отправка сообщения, а потом троллишь кого-то по скайпу или че там ![]() З.Ы Да, вот оно: Цитата:
|
|
#19
|
||||
|
||||
|
Цитата:
|
|
#20
|
||||
|
||||
|
Люблю спорить
Но в том-то и дело, чтобы "запомнить" хэндл, нужно отловить клик по требуемом поле/окне? вот и нужно ставить хук или глобальный, или только на скайп этот или что там, далее ф-цией WindowFromPoint получать хэндл, и по "клацании" на пресловутую кнопку отправлять в это окно текст Код:
SendMessage(хэндл, WM_SETTEXT, 0, integer(@текст[1])); Последний раз редактировалось YVitaliy, 28.08.2012 в 13:54. |
|
#21
|
||||
|
||||
|
Это, если каждый мышкой кликать и хендл искать, по мне так я бы один раз узнал имя окна, а потом по-накатанному.
|
|
#22
|
||||
|
||||
|
С этого и надо было начинать!
Действительно, если программа заранее известна, то можно и так. Скайп можно искать и по имени (там кажись первое слово в Caption окна всегда Skype). Согласен.Но с полями ввода что тогда делать, как их искать? Мой способ - хоть какое-нибудь решение! |
|
#23
|
|||
|
|||
|
Как вариант : окно с кнопкой (Params.ExStyle := Params.ExStyle or WS_EX_NOACTIVATE or WS_EX_TOPMOST
. Фокус остается у окна скайпа. Клик по кнопке - эмуляция клавиатурного ввода. ![]() |