hi!
ich erstelle panels zur laufzeit und sollte diese dann in verschiedene images legen. mein drag and drop-code ist bisher folgender:
Delphi-Quellcode:
procedure TForm1.OnMD(Sender: TObject; Button: TMouseButton; // onmousedown
Shift: TShiftState; X, Y: Integer);
begin
if not Drag then begin
Drag:=True;
Kx:=X;
Ky:=Y;
end;
end;
procedure TForm1.onMU(Sender: TObject; Button: TMouseButton; // onmouseup
Shift: TShiftState; X, Y: Integer);
begin
if Drag then
Drag:=False;
end;
procedure TForm1.OnMM(Sender: TObject; Shift: TShiftState; X,Y: Integer); // onmousemove
begin
if Drag then begin
TControl(Sender).Left:=Min(Max( 10,TControl(Sender).Left+X-Kx),
Form1.ClientWidth -TControl(Sender).Width -10);
TControl(Sender).Top :=Min(Max(200,TControl(Sender).Top +Y-Ky),
Form1.ClientHeight-TControl(Sender).Height-30);
end;
end;
das drag and drop der panels funktioniert also bis jetzt, nun muss ich noch die panels "ausrichten", also wenn man ein panel über ein image zieht, dann soll es z.b. 5 pixel vom oberen und linken rand entfernt sein. also so dass es immer im image zentriert ist.
wie finde ich heraus, ob das panel überhaupt über einem image ist?
greetz
fluffy
ps: programmiere gerade mein erstes kleines projekt über drag and drop, deshalb könnte es zuweilen sein, dass man
macht... ihr wisst schon