Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Кнопка в другом приложении


snake1977 ©   (2003-11-20 17:25:00) 

Здравствуйте! Подскажите как можно нажать на кнопку расположенную на форме другого приложения?


Demetrius2003   (2003-11-20 22:07:00) [1]


> Владислав © (20.11.03 18:30) [5]

Действительно, вообще с головы вылетело :))


Владислав   (2003-11-20 19:19:00) [2]

Ага. Поэтому я писал в [4] : "Для класса окна "Button" сообщение BM_CLICK."


DVM   (2003-11-20 18:47:00) [3]

К вашему сведению не всякой кнопке можно послать сообщение. Некоторые кнопки не являются окнами (как, например кнопки на ToolBar или SpeedButton). Некоторые просто нарисованы.


Владислав   (2003-11-20 18:30:00) [4]

> Demetrius2003 © (20.11.03 17:32) [1]
> xtz © (20.11.03 18:27) [3]

Просто к сведению:

BM_CLICK Message

An application sends a BM_CLICK message to simulate the user clicking a button. This message causes the button to receive the WM_LBUTTONDOWN and WM_LBUTTONUP messages, and the button"s parent window to receive a BN_CLICKED notification message.

...

Minimum operating systems Windows 95, Windows NT 3.5


Владислав   (2003-11-20 18:29:00) [5]

Для класса окна "Button" сообщение BM_CLICK.

Какой тут еще пример?!

SendMessage(hMyButton, BM_CLICK, 0, 0);

где hMyButton - хендл кнопки.

И вот про что не забудь:

If the button is in a dialog box and the dialog box is not active, the BM_CLICK message might fail. To ensure success in this situation, call the SetActiveWindow function to activate the dialog box before sending the BM_CLICK message to the button.


xtz   (2003-11-20 18:27:00) [6]

Вот......

Procedure PushButton(ButtonHandle:Thandle);
begin
sendmessage(ButtonHandle,wm_LButtonDown,0,0);
sendmessage(ButtonHandle,wm_LButtonUp,0,0);
End;


snake1977   (2003-11-20 17:35:00) [7]

а примерчиком не поделитесь??
в API я 0.


Demetrius2003   (2003-11-20 17:32:00) [8]

Послать кнопке WM_LButtonDown и WM_LButtonUP, хотя может и одного WM_LButtonUP будет достаточно


Наверх

Титульная страница Поиск, карта сайта Написать письмо