Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.12.28;
Скачать: CL | DM;

Вниз

Есть чужое приложение, нужно определить состояние Tbutton   Найти похожие ветки 

 
Dmitrij   (2008-02-12 20:24) [0]

т.е. Enabled оно или disable?
Очень срочно нужно, если enabled то нажать на нее функцией SendMessage
Подскажите плз!!!


 
Dib@zol ©   (2008-02-12 20:40) [1]

procedure TryClick;
var
 H, S : THandle;
begin
 H:=FindWindow("TForm1", "Form1");
 H:=FindWindowEx(H, 0, "TButton", "Button1");
 if H<>0 then begin
   S:=GetWindowLong(H, GWL_STYLE);
   if S and WS_DISABLED = 0 then begin
     MessageBox(hWnd, "Кнопка активна! Нажимаем...", "", 0);
     SendMessage(H, BM_CLICK, 0, 0);
   end else MessageBox(hWnd, "Кнопка неактивна!", "", 0);
 end;
end;


Что-то типа этого. Протестировал - вроде как пашет.


 
Dib@zol ©   (2008-02-12 20:42) [2]

Замени "TForm1" и "Form1" на соответсно класс и имя родительского для кнопки окна, а "TButton" и "Button1" на "BUTTON"(если прога на WinAPI) и соответственно на имя кнопки. МессаджБоксы убери.


 
Leonid Troyanovsky ©   (2008-02-12 20:54) [3]


> Dmitrij   (12.02.08 20:24)  

> Очень срочно нужно, если enabled то нажать на нее функцией
> SendMessage

И зачем если? Жми всегда.
Тем более, что срочно.

--
Regards, LVT.



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

Текущий архив: 2008.12.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
15-1225111586
frgs
2008-10-27 15:46
2008.12.28
Как зоставить сервис не обрываться ?


3-1211873955
<bvv>
2008-05-27 11:39
2008.12.28
ORACLE доступ к "чужой" сессии


2-1226997574
SkyN
2008-11-18 11:39
2008.12.28
Как избавиться от 100% загрузки CPU? 5Мб лога в секунду.


4-1202755664
Prosto Dimon
2008-02-11 21:47
2008.12.28
API internet explorer_server


15-1225275082
Petr V. Abramov
2008-10-29 13:11
2008.12.28
наигрались :)