Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Brauch ich jetzt ein Maus Hook? (https://www.delphipraxis.net/202079-brauch-ich-jetzt-ein-maus-hook.html)

MicMic 25. Sep 2019 18:23

Brauch ich jetzt ein Maus Hook?
 
Hallo,

habe eigentlich für meine TListBox eine MouseWheel Funktion. Die geht wie sie soll.
Für TListBox habe ich noch "IDropSource" hinzugefügt und für die Form "IDropTarget". Eigentlich habe ich nun alles zusammen, damit ich z.B. aus meiner TListBox etwas mit der Maus in den Explorer ziehen kann oder auch andersrum, etwas vom Explorer in meine TListBox hineinbekomme. Während des Drag&Drops geht aber das Mausrad nicht mehr bzw. die dazugehörige Funktion wird nicht mehr ausgeführt. Die Taste selbst vom Mausrad kann ich aber in "DragOver" von "IDropTarget" noch abfragen. Schade das es hier kein Wert für eine Scroll Richtung gibt. Im Internet habe ich nichts dafür gefunden. Aber die Seiten sprechen (leider mal alles wieder englisch) von Mouse Hooks. Brauch ich jetzt dafür so was?

Hier aber wohl nur Lokal... also kein Hook in einer DLL. Soll ich damit mal herumexperimentieren oder gibt es im Drag/Drop Prozess hierfür noch einen Trick, damit ich das Mausrad abfragen kann?

Gruß Mic

DualCoreCpu 25. Sep 2019 19:44

AW: Brauch ich jetzt ein Maus Hook?
 
Guck mal auf der Sourceforge Webseite. Dort gibt es das Paket "Delphi - VRCalc++ OOSL and more"

In diesem .zip Archiv den Ordner "ax\dev\Tools\Delphi\Drag and Drop\Adrix wählen und dort schaust Du, ob was passendes dabei ist.

Adrix ist in einem Archiv namens "Adrix.zip" gepackt, das aus dem Inhalt des Ordners mit dem Namen Adrix besteht.

Optimalen Erfolg gewünscht.

MicMic 26. Sep 2019 00:43

AW: Brauch ich jetzt ein Maus Hook?
 
Danke für die Info. Da habe ich schon mal reingeschaut. Ich finde da keine MouseWheel Funktionen. Drag&Drop selbst geht ja bei mir.
Habe inzwischen ein Maus Hook probiert. Mit "WH_MOUSE_LL". Damit kann ich dann mein Scrollrad der Maus abfragen. Jedoch wird's langsam, sprich meine Maus ruckelt ganz leicht. Ein Problem, was wohl auch andere haben. Mit WH_MOUSE (ohne LL) bekomme ich es irgendwie nicht hin. SetWindowsHookEx liefert da immer 0 zurück.

Gruß Mic

MicMic 26. Sep 2019 02:36

AW: Brauch ich jetzt ein Maus Hook?
 
Habe es jetzt wohl hinbekommen.
Problem war mit WH_MOUSE, dass bei SetWindowsHookEx der letzte Parameter geändert (in GetCurrentThreadID) werden musste.
Danach musste noch mein MSLLHOOKSTRUCT Record angepasst werden.
Jetzt scheint die Maus nicht mehr zu ruckeln. Muss aber noch durchgetestet werden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:40 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