Entwickler-Ecke

Sonstiges (Delphi) - Drag&Drop


hibbert - Di 11.03.03 19:08
Titel: Drag&Drop
hai,
ich habe eine leere form vor mir ( :shock: ). Und nun kommts hart auf hart ich habe noch ein image draufgepackt ( :shock: :shock: ). doch nun zu meiner frage:wenn ich auf das Bild klicke (und gedrückt halte) mit dem cosur der Maus bewegen und wenn ich den klick aufhebe (sprich die maustaste loslasse) dann soll das image dort bleiben wo es ist.
das dürfte doch eigendlich gehen, oder? und wie? vielen dank

mfg hibbert


Keldorn - Di 11.03.03 20:29

Hallo

Stichwort: releasecapture

http://www.tipps.delphi-source.de/oberflaeche/tut20000709-1.shtml

Mfg Frank


GSE - Di 11.03.03 20:54

Zitat:
dann soll das image dort bleiben wo es ist.

Wenn es dort bleiben soll wo es ist, was ist daran das Problem? Das ist doch schon so! :twisted:

mfg
GSE

[Achtung: Wer diesen Beitrag ernst nimmt ist selber schuld :wink: ]


hibbert - Di 11.03.03 21:23

GSE hat folgendes geschrieben:
Zitat:
dann soll das image dort bleiben wo es ist.

Wenn es dort bleiben soll wo es ist, was ist daran das Problem? Das ist doch schon so! :twisted:

dazu sag ich nur hahaha... (ich hoffe du weißt wie das gemeint war :?:) abba trotzdem danke. achso Keldorn danke für den link, aber das funzt leider nicht :(

gibt es da noch eine andere möglichkeit?

mfg hibbert


GSE - Di 11.03.03 21:58


Quelltext
1:
2:
3:
4:
5:
6:
7:
procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
const sc_dragmove = $f012;
begin
  ReleaseCapture;
  TWinControl(Image1).perform(wm_syscommand,sc_dragmove, 0);
end;


[edit] UUps! :oops: Das ist mir jetzt peinlich!, man sollte Beiträge eben immer genau durch lesen? (vonwegen LInk geht net: Procedure geht net!)[/edit]


mfg
GSE

Moderiert von user profile iconKlabautermann: Code-Tags hizugefügt.


GSE - Di 11.03.03 22:17

Oben genannte Version funktioniert nur bei von TWinControl abgeleiteten Kompos, für TImage trifft das ja nicht zu!

Hier eine wenig längere Version, die aber funktionieren sollte:http://delphi.about.com/library/weekly/aa080399.htm

mfg
GSE


hibbert - Di 11.03.03 22:30

Cool danke, ich habe den code noch etwas abgeändert, sodass man nicht die [strg] tase drücken muss, abba egal es funzt.
danke
kann man jetzt auch noch bestimmen, dass das image nur an bestimmten stellen ''andoggen'' darf? zum beispiel nur auf einem anderen image?

mfg hibbert


Keldorn - Di 11.03.03 22:49

hibbert hat folgendes geschrieben:

achso Keldorn danke für den link, aber das funzt leider nicht :(

upps, hatte das immer mit Buttons und labels so gemacht, Images waren da nicht auf der Tagesordnung :?