Einzelnen Beitrag anzeigen

Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: OnMouseUp - Maus beim bewegen loslassen

  Alt 27. Nov 2007, 18:15
Die Zeit der letzten Bewegung merken, sollte doch auch gehen.
Die Mausbewegung ist doch auch nur ein diskretes Ereignis. Da musst du irgendwie mit Zeiten arbeiten.

Edit: Ohne Timer dann vielleicht so
Delphi-Quellcode:
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  stampx:=x;
  stampy:=y;
  stamp:=gettickcount;
end;


procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
const output:array[boolean] of string=('Stillstand','Bewegung');
      limit=2;
var speed:double;
    divstamp:cardinal;
begin
  divstamp:=gettickcount-stamp;
  if divstamp=0 then
    speed:=limit*50
  else
    speed:=sqrt(sqr(stampx-mouse.CursorPos.X)+sqr(stampy-mouse.CursorPos.y))/(divstamp);
  edit1.text:=floattostr(speed)+' '+output[speed>limit];
end;

end.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat