Вниз
Скачать: CL | DM;

Приход / уход мыши   Найти похожие ветки 

← →
Mischka ©   (2003-05-14 07:36) [0]

Пытаюсь в главной оконной функции отловить событие WM_MOUSEHOVER и WM_MOUSELEAVE. Ничего не происходит, как будто мое окно не получает таких сообщений вообще.
Вот код:
function WindowProc(Window: HWND; Message, wParam: Word; lParam: longint): longint; stdcall;
begin
Result:=0;
case Message of
WM_MOUSEHOVER: beep(440, 40);
...
end;
end;


← →
MBo ©   (2003-05-14 07:41) [1]

WM_MOUSEHOVER
что это???????????????????


← →
Mischka ©   (2003-05-14 07:52) [2]

Да хрен его знает. Майкрософт пишет, что такое сообщение должно передаваться окну при приходе мыши.


← →
MBo ©   (2003-05-14 08:22) [3]

просто так они не возникают - для WM_MOUSELEAVE надо TrackMouseEvent делать с TME_LEAVE.
Попробуй то же и с MOUSEHOVER.
IMHO, проще MouseMove отслеживать.


← →
Mischka ©   (2003-05-14 08:32) [4]

TrackMouseEvent я делаю, ни хрена не помогает


← →
NAlexey ©   (2003-05-14 11:37) [5]

Ну а просто MouseEnter/MouseLeave?


← →
Mischka ©   (2003-05-14 12:29) [6]

И куда их пихать? Я че-то не догоняю...


← →
NAlexey ©   (2003-05-14 12:59) [7]

>И куда их пихать? Я че-то не догоняю...
Э-э-э... М-м-м. Кого прости "пихать"?
Обрабатывай сообщения CM_MOUSELEAVE и CM_MOUSEENTER.

procedure CMMouseLeave(var Message: TMessage);
begin
if Message.LParam = Integer(YourControl) then
begin
(...)
end;
inherited;
end;

Ну и Enter также.


← →
Mischka ©   (2003-05-14 14:31) [8]

Да нету у меня никаких контролов. Есть только окно созданное API-функциями - HWND


← →
Игорь Шевченко ©   (2003-05-14 15:19) [9]

Посмотри исходники forms.pas TApplication.DoIdle

или внимательно почитай про TrackMouseEvent



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
1-55651
Rel_
2003-07-04 10:39
2003.07.17
TMemo


11-55487
Ал
2002-11-12 09:32
2003.07.17
Как работать с handle всего приложения и отдельных форм


1-55564
khvalera
2003-07-07 00:21
2003.07.17
OnKeyPress


14-55761
vuk
2003-07-02 20:34
2003.07.17
Вот я не понял...


3-55428
kati
2003-06-24 12:07
2003.07.17
SOS Не могу найти ошибку в SQL запросе




   Наверх