как да се сложи TrackMouseEvent?
предмет
действителната функция извършена правилно без съобщения не идват :( какво да правя.
пиша
Var
# XA0; ТМЕ. tagTRACKMOUSEEVENT;
.
# XA0; tme.cbSize: = sizeof (tagTRACKMOUSEEVENT);
# XA0; tme.dwFlags: = TME_QUERY или TME_HOVER или TME_LEAVE;
# XA0; tme.hwndTrack: = self.Handle;
# XA0; tme.dwHoverTime: = 50; // HOVER_DEFAULT;
# XA0; ако не TrackMouseEvent (ТМЕ) и след това
# XA0; # XA0; somemessage.
# XA0;
След това аз се опитах така
процедура WMMouseHover (VAR Съобщение TMessage.); съобщение WM_MOUSEHOVER;
# XA0; # XA0; процедура WMMouseLeave (VAR Съобщение TMessage.); Съобщението WM_MOUSELEAVE;
както и по този начин
процедура TForm1.NewProc (VAR Съобщение: TMessage);
започвам
# XA0; # XA0; ако Message.Msg = WM_MOUSEHOVER тогава
# XA0; # XA0; Надпис: = "мишката" друго
# XA0; # XA0; ако Message.Msg = WM_MOUSELEAVE тогава
# XA0; # XA0; Надпис: = "остави";
# XA0; # XA0; # XA0;
OldProc (ЛС);
приключи;
И nifiga! = (И аз не го направят.
И къде да го сложите? Тук идеята е това, което: когато се движите мишката върху прозореца, че е необходимо да се движи водачът във всеки един момент да предизвика TME, тогава можем да се изравнят на факта на напускане на прозореца с мишката. При въвеждане на мишката в съобщение прозорец, и така ще дойде.
Възможно primerchik. Аз със сигурност не съвсем Krivorukov, но досега съм дошъл само да задържите курсора на мишката, и то само в прехода между детето и самия прозорец :(
Виждал съм с melkosofta в knoleage база като пример за подражание 95 и повече години NT. Но без да представят невярно можете да направите?
Памет: 0.72 MB
Време: 0.272 гр
Свързани статии