![]() |
Mausklick Dauer herausfinden
Tag zusammen.
Ich stehe gerade vor einem Problem: Es soll die Zeit, die für einen Mausklick (also die Zeit zwischen MouseDown und MouseUp) gebraucht wird, gemessen werden. Der Mausklick passiert irgendwo auf dem Bidlschirm, also außerhalb des Delphi Programms.
Delphi-Quellcode:
Bei dem Code bin ich mir nicht sicher, ob das so geht. So würde ja die Zeit schon laufen, auch wenn die Maus noch nicht runtergedrückt wurde. :?
procedure TForm1.Clock;
var Time: Cardinal; begin Time:=GetTickCount; // hier müssten die beiden Events abgefangen werden ListBox1.Items.Add(IntToStr(GetTickCount - Time)); end; Wär nett, wenn jemand helfen kann. :) Gruß, kumpel |
Re: Mausklick Dauer herausfinden
Stopp die Zeit zwischen den Events MouseDown und MouseUp (allerdings geht es Desktopweit nur, wenn du dein fentser auf den Desktop ausdehnst oder einen globalen Hook einsetzt.
Delphi-Quellcode:
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer); begin if zeit=0 then zeit:=gettickcount; end; procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin edit1.text:=inttostr(gettickcount-zeit); zeit:=0; end; |
Re: Mausklick Dauer herausfinden
Danke für die schnelle Antwort.
Zitat:
Das geht so leider nicht, weil zum Zeitpunkt des Klicks ein anderes Fenster im Vordergrund ist, also der Klick findet außerhalt meines Delphi PRogramms statt. Dass ich dazu Hooks einsetzen muss, hatte ich schon befürchtet. Aber hilft nichts, ich werde mich mal einlesen. Danke trotzdem. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:35 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