![]() |
Eine Form an eine andere Form andocken?
Hallo,
ich habe 2 Form. Jetzt soll die eine beim öffnen links an das schon offene andocken und die andere beim öffnen rechts ran! Wie mache ich das? P.S: Ja ich habe gesucgt und nein es kamm ncihts schlaues raus! Gregor |
Re: Eine Form an eine andere Form andocken?
Kann es sein das es einfach nicht möglich ist, denn auch googeln brachte keinen erfolg :(
|
Re: Eine Form an eine andere Form andocken?
Zitat:
|
Re: Eine Form an eine andere Form andocken?
Hallo,
um eine Form an die andere Anzudocken, könntest Du folgendes machen:
Delphi-Quellcode:
Damit klebt die Form2 immer an der Form1 wenn Du Form1 bewegst, nur,
UNIT Unit1;
INTERFACE USES ... unit2; // <----- 2. Form einbinden! TYPE TForm1 = CLASS(TForm) Button4: TButton; PROCEDURE Button4Click(Sender: TObject); PRIVATE // Dockingmanager PROCEDURE WMMove(VAR Message: TWMMove); MESSAGE WM_MOVE; PROCEDURE AlignForm; PUBLIC { Public declarations } END; VAR Form1 : TForm1; DebugM : TForm2; IMPLEMENTATION {$R *.dfm} PROCEDURE TForm1.WMMove(VAR Message: TWMMove); BEGIN INHERITED; TRY // Prüfen ob Form2 vorhanden ist IF Assigned(DebugM) THEN BEGIN AlignForm; END; EXCEPT END; END; PROCEDURE TForm1.AlignForm; BEGIN // Form2 an Form1 ausrichten (rechte obere Ecke) DebugM.Left := Self.Left + Self.Width; DebugM.Top := Self.Top; END; PROCEDURE TForm1.Button4Click(Sender: TObject); // Form2 erst zur Laufzeit erzeugen! BEGIN IF NOT Assigned(DebugM) THEN BEGIN // Self benötigt kein Destroy! DebugM := TForm2.Create(Self); TRY DebugM.Show; EXCEPT DebugM.Free; END; END; END; END. wenn es mit beiden Forms unabhängig Funken sollte, dafür habe ich auch keine Lösung. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:05 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