Hallo,
ich baue gerade an einen Designer und möchte zur Laufzeit eigene Controls erzeugen und mit der Maus verschiebbar machen.
Hierfür habe ich folgenden Schnipsel gefunden:
Delphi-Quellcode:
procedure TForm1.PanelMouseDown(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if ssLeft in Shift then
begin
ReleaseCapture;
Panel.Perform(WM_SYSCOMMAND,$F012,0);
end;
end;
Das funktioniert mit einem zur Entwurfszeit auf die Form gepappten Panel prima, aber irgendwie fehlt mir der Weg das für ein oder mehrere zur Laufzeit erzeugte eigene "myPanel" (von TPanel abgeleitet) umzusetzen!
Der Versuch von
Delphi-Quellcode:
Pan := TmyPanel.Create(Form1);
Pan.Parent := Form1;
Pan.MouseDown := PanelMouseDown;
führt zu der Fehlermeldung: "auf protected-Symbol TControl.OnMouseDown kann nicht zugegriffen werden"
Kann mir bitte jemand auf die Sprünge helfen?
Ciao
Stefan