WM_MOUSEWHEEL Hooken
-
Wie kann ich die Daten kriegen um wieviel das Mausrad weiterbewegt wurde?
Ich frags so ab:LRESULT CALLBACK MouseHookProc ( int nCode, WPARAM wParam, LPARAM lParam ) { if(nCode < 0) return CallNextHookEx(hMouseHook, nCode, wParam, lParam); //WM_MOUSEWHEEL if(nCode == HC_ACTION && wParam == WM_MOUSEWHEEL) { printf("%i",???????"); } return CallNextHookEx(hMouseHook, nCode, wParam, lParam); }
lParam ist ja ein Pointer auf die MOUSEHOOKSTRUCT aber die enthaltet nur die Koordinaten.
Wenn ich lParam in MOUSEHOOKSTRUCTEX kaste kommen immer unsinnige Werte raus.danke
-
In der Doku (genauer hier) steht folgendes:
zDelta = GET_WHEEL_DELTA_WPARAM(wParam);
-
Hi
Das problem ist aber das bei Der MouseProc wParam die Nachricht ist also WM_MOUSEWHEEL und lParam ein Pointer auf eine MOUSEHOOK Struktur allerdings benötige ich eine MOUSEHOOKEXT Struktur und da weiss ich nicht wie ich die krieg einfaches casten funkt eben nicht.
danke
-
1. Du hast aber schon Windows 2000 oder XP?
2. Hast du mal probiert, direkt einen Pointer auf eine MOUSEHOOKSTRUCTEX-Struktur zu übergeben?Anaonsten hab ich jetzt zur Verwendung dieser Struktur in der MSDN-Library auch nicht grad viele Infos gefunden
-
- ja hab ich
2)Wem soll ich die übergeben?
Sorry steh jetzt irgendwie auf der Leitung
Wenn ich in der MSDN MOUSEHOOKSTRUCTEX eingebe krieg ich 3 Ergebnisse einmal die definition der struktur einmal eine Seite über Hooks wo ein Link dazu steht der zur definiton geht und einmal eine Erwähnung in der Liste die X_BUTTONS berücksichtigt oder so ähnlich.
- ja hab ich
-
Sorry, mein 2. machte keinen Sinn
Wie sehen denn die Werte aus, die du beim kasten im HIWORD von mouseData der MOUSEHOOKSTRUCTEX bekommst?
-
Hi
es kommt immer 65416 raus egal wie fest oder nicht fest ich das Mausrad drehe.
-
2^16 = 65536
65536 - 65416 = 120 oder
65416 - 65536 = -120, was laut Doku den Deltas pro "Klick" entsprichtSo ganz falsch scheint der Wert also nicht zu sein
(HIWORD-Makro hast du ja angewendet, oder?
)
Aber es ist jetzt für mich schon zu spät, um noch klar denken zu können[ Dieser Beitrag wurde am 27.04.2003 um 23:55 Uhr von flenders editiert. ]
-
Hi
Da das hatte ich gemacht.
Hab jetzt aber rausgefunden worans liegt.
HIWORD() gibt ja QORD zurück und da gibts ja keine - Zahlen hab das jetzt in
signed short konvertiert jetzt gehtsvielen dank noch