Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.05.30;
Скачать: [xml.tar.bz2];

Вниз

Имитация нажатия кнопки.   Найти похожие ветки 

 
[HDD]John   (2002-03-27 17:45) [0]

Надо имитировать нажатие кнопки. Использую функцию keybd_event.
Но она нажимает только в активном окне, а можно ли сделать так чтобы она нажимала в неактивном окне ????

На что мне ответили:

Попробуй отправить тому окну WM_KEYDONW и WM_KEYUP, должно сработать.

Но чето не понял как это мне поможет ???Поясните ПЛИЗ


 
cok   (2002-03-27 18:20) [1]

КОРОЧЕ, СКАЛИХАСОВСКИ, ЕНТО УЖЕ БЫЛО:
Var
ButClassName,ButCaption:String;
MainWnd,ButWnd:HWND;
Begin
ButClassName:="имя_класса_кнопки";
ButCaption:="надпись_на_кнопке";
MainWnd:=<хендл_окна_на_котором_находится_кнопка>;
ButWnd:=FindWindowEx(MainWnd, 0, PChar(ButClassName), PChar(ButCaption));
PostMessage(ButWnd, BM_CLICK, 0, 0);
End;




 
Chris   (2002-03-28 08:18) [2]

Если кому-нибудь пригодится, то эту прогу я использую при включении компьютера. Запускается она по ключу из RunService (до появления окошка "введите сетевой пароль") и нажимает кнопку OK (у меня пустой пароль).

procedure TForm1.Timer1Timer(Sender: TObject);
var i: integer;
cName, wName: PChar;
begin
Timer1.Enabled:=False;
if FindWindow("#32770","Ввод сетевого пароля")>32 then
begin
cName:=StrNew(" ");
wName:=StrNew(" ");
for i:=32 to 10000 do
if isWindow(i) then
begin
GetClassName(i,cName,50);
GetWindowText(i,wName,50);
if (cName="Button")and(wName="ОК") then
begin
SendMessage(i,WM_LBUTTONDOWN,0,0);
// Внимание! Кнопку надо не только нажать, но еще и отпустить!
SendMessage(i,WM_LBUTTONUP,0,0);
Close;
end;
end;
StrDispose(cName);
StrDispose(wName);
end;
Timer1.Enabled:=True;
end;



 
[HDD]John   (2002-03-28 13:48) [3]

Класные штуки сеньку вери мач они мне пригодятся....Но боюсь я не правильно объяснил... Мне надо чтобы в левом (не дельфинском) окне эмитировалось нажатие КЛАВИШИ ТАВ



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2002.05.30;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.006 c
1-97222
Blacki
2002-05-19 23:51
2002.05.30
Проблемы с выключением Windows


1-97243
Destroyer
2002-05-20 12:43
2002.05.30
Распечатка изображения


1-97333
Sterh1
2002-05-18 20:31
2002.05.30
Files


1-97235
space_center
2002-05-20 18:47
2002.05.30
Количество символов в RichEdit


1-97220
MaximatorVeter
2002-05-20 14:48
2002.05.30
запись TClass = class of TObject; в System.pas





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский