![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как можно пожно послать активному приложению команду вставить ;) [D4, D5, D6, D7, Win95/98, WinME, WinXP]
Dankin © (2003-06-06 04:56:00)Как можно послать активному приложению команду вставить из буфера текст, в то место где находится курсор (не мыши а этого приложения). Например в NotePade в середину текста?
Заранее огромное спасибо.
Dankin (2003-06-08 22:25:00) [1]Почемуто не работает.
Приведу пример, может скажите что тут не так.
В момент срабатывания этой функции я делал активным
окно IE, а курсор ставил прямо вот сюда (окно ввода вопроса),
поидеи суда должно было записаться HELLO2, но не записалось.
Что нужно сделать, чтобы моё приложение, если грубо, могло
написать что-то в этом окне ввода или каком другом активном
поле которое подрозуменает ввод?
dwTargetOwner:=GetWindowThreadProcessId(GetForegroundWindow,nil);
dwThreadId:=GetCurrentThreadId();
if (dwTargetOwner<>dwThreadID)then
Result:=AttachThreadInput(dwThreadID,dwTargetOwner,true);
label2.Caption:=inttostr(GetFocus); (Handle элемента в фокусе)
AttachThreadInput(dwThreadID,dwTargetOwner,False);
edithandle:=strtoint(label2.Caption);
texttoset:="Hello2";
SendMessage(GetFocus, WM_SETTEXT, 0, Integer(TextToSet));
Spawn (2003-06-06 05:47:00) [2]SendMessage(Handle, WM_PASTE, 0, 0);