Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Verständnis problem TrackMouseEvent (https://www.delphipraxis.net/161516-verstaendnis-problem-trackmouseevent.html)

EWeiss 7. Jul 2011 09:24

Verständnis problem TrackMouseEvent
 
Habe damit noch nicht gearbeitet daher nur eine Frage ist die implementierung so OK?

Delphi-Quellcode:
var
  FTrackMouseEvent: function(var EventTrack: TTrackMouseEvent):BOOL; stdcall;
Bei

Delphi-Quellcode:
constructor THookedCombo.Create;

...
Delphi-Quellcode:
// Library Laden
TrackUser32 := FuncExported('TrackMouseEvent', 'User32.dll');

Delphi-Quellcode:
function THookedCombo.FuncExported(stFunc, stModul: PWideChar): Boolean;
var
  GetModule: Cardinal;

begin

  Result := False;

  GetModule := GetModuleHandleW(stModul);
  try
    if GetModule = 0 then
      GetModule := LoadLibraryW(stModul);

    if GetModule <> 0 then
      if GetProcAddress(GetModule, stFunc) <> nil then
        Result := True;

  finally
    FreeLibrary(GetModule);
  end;
end;

auswerten!
Delphi-Quellcode:
    WM_MOUSEMOVE:
      begin
        CtrlState(WinHandle, Down);
        TrackMouse(WinHandle);
      end;
Delphi-Quellcode:
procedure THookedCombo.TrackMouse(WinHandle: HWND);
var
  Tme : TTRACKMOUSEEVENT;
begin

  Tme.cbSize := SizeOf(TTrackMouseEvent);
  Tme.dwFlags := TME_LEAVE;
  Tme.hwndTrack := WinHandle;
  FTrackMouseEvent := @TrackMouseEvent;

  if TrackUser32 then
    FTrackMouseEvent(Tme);

end;

gruss


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:03 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz