![]() |
TImage per Maus bewegen
Hi, ich würde gerne wissen wie ich ein Image richtig mit der Maus bewegen kann... das was ich bis jetzt selber versucht habe geht nicht so wirklich.
Delphi-Quellcode:
Danke für eure Hilfe
procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer); begin if move= true then begin Image1.Left:= X; Image1.Top:= Y; end; end; procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin move:=true; end; procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin move:=false; end; |
Re: TImage per Maus bewegen
Ohne grosse Umrechnungen der Mausposition usw. geht es in dem man ein Panel benutzt.
Also, lege ein Panel auf die Form und in dieses kommt ein Image. Beim Panel noch AutoSize auf True stellen.
Delphi-Quellcode:
const
SC_DRAGMOVE = $F012; procedure TForm1.FormCreate(Sender: TObject); begin DoubleBuffered := True; // wird das Flackern nicht 100% beseitigen aber verbessern end; procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if Shift = [ssLeft] then // ist linke Maustaste gedrücht, dann... begin ReleaseCapture; // "Maus an akt. Form binden" Panel1.Perform(WM_SYSCOMMAND, SC_DRAGMOVE, 0); // Panel verschieben end; end; |
Re: TImage per Maus bewegen
|
Re: TImage per Maus bewegen
:thumb: Genial...
Ich schlag mal vor, ab mit dem Code in die Codelib... |
Re: TImage per Maus bewegen
Ich kann mich Jelly nur anschließen.
Genial :thumb: |
Re: TImage per Maus bewegen
Zitat:
|
Re: TImage per Maus bewegen
Beide Codes sind CodeLib reif, Deiner und der von Matti.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:48 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 by Thomas Breitkreuz