![]() |
Maushook: Mausklick "nachliefern"
Mein Problem: Ich hab einen LowLevel-Mousehook installiert. Wenn die Maus bei gedrückter rechter Maustaste bewegt wird, soll der Mausklick nicht weitergeleitet werden. Wird allerdings die Maustaste gedrückt, ohne dass die Maus bewegt wird, soll alles ganz normal ablaufen, sprich Windows erfährt, dass die Maustaste gedrückt wurde.
Das Blockieren ist kein Problem (Dies erfolgt durch die Nichtaufrufung von CallNextHookEx.). Vielmehr, dass die Maustaste erst dann "gedrückt" wird, wenn die Maus weniger als, sagen wir mal, 10 Pixel bewegt wird. Das Problem ist jetzt die "Nachlieferung" von der WM_RMOUSEDOWN-Nachricht. Wenn ich versuche mit mouse_event den Mausklick zu simulieren, hat dies keine Wirkung. Ich hoff mal, dass man ungefähr nachvollziehen kann, was ich meine. Auszug aus der Hook-DLL (ist zugegebenermaßen ein wenig zusammengehackt ;) ):
Delphi-Quellcode:
{...}
Inc(CallCounter); if (wParam = WM_RBUTTONDOWN) or (wParam = WM_RBUTTONUP) then begin if wParam = WM_RBUTTONUP then if CallCounter < 10 then begin GetCursorPos(CurPos); mouse_event(MOUSEEVENTF_RIGHTDOWN, CurPos.X, CurPos.Y, 0, 0); Result := CallNextHookEx(LowLevelMouseHookHandle, nCode, WParam, LParam); end; CallCounter := 0; end else Result := CallNextHookEx(LowLevelMouseHookHandle, nCode, WParam, LParam); {...} |
Re: Maushook: Mausklick "nachliefern"
sorgst du irgendwie auch dafür das deine message nicht durch deinen eigenen hook rausgefiltert wird??
|
Re: Maushook: Mausklick "nachliefern"
Ah, danke für den Gedankenanstoß. Ich Hirni hab das im Eifer des Gefechts vergessen ;). Es klappt jetzt, so wie ich es will.
|
Re: Maushook: Mausklick "nachliefern"
ma hoffn, das ich hier das richtige thema erwischt hab....
hab keine ahnung was n hook is... :gruebel: was ich brauch, ist ein befehl, mit dem ich den NÄCHSTEN mausklick abfragen kann..... :dance: zb: if (als nächstes image2 angeklickt wird) then begin :dancer2: könnta mir weitergelfen :?: |
Re: Maushook: Mausklick "nachliefern"
Zitat:
|
Re: Maushook: Mausklick "nachliefern"
naja.... das prog soll ja auch wissen, OB ich in zukunft was mache (image1 anklicke)
|
Re: Maushook: Mausklick "nachliefern"
Zitat:
Zitat:
|
Re: Maushook: Mausklick "nachliefern"
Du kannst nur auf Ereignisse reagieren, nicht sie vorhersagen ;)
Du könntest natürlich etwas machen,wenn die Maus über deinem Image ist - siehe OnMouseMove ;) |
Re: Maushook: Mausklick "nachliefern"
Abgesehn von der unlogik der Frage würde ich mal sagen was dir wahrscheinlich jemand anderes auch sagen würde wenn ich es jetzt nicht tue... Mach lieber nen eigenen Thread auf statt den hier zu missbrauchen ;)
Allein schon weil die Leute die sich den Thread hier angucken nicht darauf gefasst sind dein Problem zu beheben sondern das des Thread-Erstellers wodurch du auch wohl weniger antworten bekommen wirst hier... Und du solltest deine Frage vielleicht besser verständlich stellen :mrgreen: Ich hab das Gefühl das du was machen willst, was ziemlich einfach ist und du drückst es nur komisch aus. Gruß Neutral General |
Re: Maushook: Mausklick "nachliefern"
is so...
ich will/soll ein memoryspiel mit delphie programieren..... aba das klappt net mit den paar befehlen die ich hab.... :roll: n eigenen thread habsch schon aufgemacht.... nur da antwortet keiner .... naja.... dann mussch wohl abwarten.. trotzdem danke.. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz