Hi,
ich habe ein großes Panel auf dem ich zur Laufzeit kleinere Panels generiere.
Jetzt möchte ich, dass man auf das große Panel klicken und dann mit der Maus die kleinen Panels glechzeitig verschieben kann.
Mit einem kleinen Panel geht das auch aber wenn mehrere da sind wird nur das erste verschoben.
Mein Code sieht in etwa so aus:
Delphi-Quellcode:
procedure TForm1.ParentPanelMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var i : integer;
begin
if Shift = [ssLeft] then
begin
ReleaseCapture;
for i := 0 To ParentPanel.ControlCount-1 Do
begin
Sendmessage(TWinControl(ParentPanel.Controls[i]).handle, WM_NCLBUTTONDOWN, 2, 0);
end;
end;
end;
Wenn ich für i einen festen Wert einsetzte oder die Schleife downto mache wir auch das entsprechende Panel bewegt aber eben immer nur eins.
Weiß jemand woran das liegen kann? Oder weiß jemand eine bessere Lösung z.B. ohne die Windows Funktionen?
mfg
Patrick