Thema: Delphi Move eines TImage

Einzelnen Beitrag anzeigen

Benutzerbild von MrMooed
MrMooed

Registriert seit: 18. Feb 2012
101 Beiträge
 
Delphi 7 Enterprise
 
#4

AW: Move eines TImage

  Alt 27. Jun 2013, 21:10
im MouseDown weißt du ihm ja schon die Position zu.
 GetCursorPos(oldPos) Aber den Wert hat er noch nicht wenn du bloß mit der Maus auf dem Image bist - allerdings noch nicht geklickt hast.
Du könntest einfach in deiner OnMouseMove Methode überprüfen ob eine Taste gedrückt wurde:

Delphi-Quellcode:
procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
const
  minWidth = 20;
  minHeight = 20;
var
  newPos: TPoint;
  frmPoint : TPoint;
begin
  if ssLeft in Shift // würde die Linke Taste gedrückt? (oder welche auch immer du drücken möchtest)
    then with TImage(Sender) do
           begin
             GetCursorPos(newPos);
             //Screen.Cursor := crSize;
             Left := Left - oldPos.X + newPos.X;
             Top := Top - oldPos.Y + newPos.Y;
             oldPos := newPos;
           end;
end;
  Mit Zitat antworten Zitat