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

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

Как знать, что мышь покинула кнопку? [D7, Win95/98, WinME, Win2k, WinXP]


Митяй2 ©   (2005-01-26 20:07:00) 

Как знать, что указатель мыши покинул кнопку TBitBtn?
Конечно, я могу использовать OnMouseMove формы, но это как-то не красиво, и при этом я могу привести несколько примеров, когда мы не получим нужного результата (не узнаем, что указатель не на кнопке) при использов. события OnMouseMove формы:
- переключились на другое приложение Alt+Tab
- открылась модально другая форма этого же приложения
и т.п.


GrayFace   (2005-02-02 02:14:00) [1]

Меняй WindowProc у кнопки.


tmpname   (2005-01-27 18:01:00) [2]

У меня CM_MOUSELEAVE успешно отлавливалось в WndProc


Muchacho   (2005-01-26 22:57:00) [3]

www.delphiworld.narod.ru - там есть как это сделать. Поищи OnMouseLeave


Митяй2   (2005-01-26 21:18:00) [4]

Спасибо, попробуем сделать наследника TBitBtn


Gero   (2005-01-26 21:17:00) [5]

Делай наследника интересующего тебя компонента и в нем лови CM_MOUSELEAVE.


Митяй2   (2005-01-26 21:12:00) [6]

В TfmForm = class(TForm)
public пишу:
procedure MyAppMessage(var Msg: TMsg; var Handled: Boolean);

при OnCreate формы пишу:

Application.OnMessage:=fmForm.MyAppMessage;

Много всяких сообщений отлавливается, только не CM_MOUSELEAVE, не приходит оно и все. :-((((


Митяй2   (2005-01-26 20:12:00) [7]

Попробуем отловить...


Gero   (2005-01-26 20:10:00) [8]

CM_MOUSELEAVE


Наверх

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