![]() |
2. Form positionstreu an die 1. Form binden
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
ich habe eine Form über die in einer speziellen Situation eine zweite Form drüber gelegt wird. Diese zweite Form hat keine Titelleiste (Borderstyle = bsNone) und als Position = poScreenCenter und wird via Show angezeigt. Soweit so gut. Mein Problem ist nun, dass diese 2. Form in der Mitte der Form stehen bleibt, wenn man die MainForm verschiebt. Nun könnte ich zwar die 2. Form mittels ShowModal anzeigen, aber das möcht ich nicht. Jetzt meine Frage: Wie kann ich eine 2. Form so an die 1. Form binden, dass sie positionstreu der 1. Form folgt? Muss ich das manuell machen (was einem Ruckeln zufolge hätte) oder gibt es eine fertige Lösung? |
Re: 2. Form positionstreu an die 1. Form binden
Du könntest entweder statt einer Form ein Panel nehmen
oder die 2. Form in die 1. Form einbinden > ![]()
Delphi-Quellcode:
und eventuell noch Top/Left anpassen
Form2.Parent := Form1;
Form2.Show;
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin Form2.Parent := Self; Form2.Left := (ClientWidth - Form2.Width) div 2; Form2.Top := (ClientHeight - Form2.Height) div 2; Form2.Show; end; |
Re: 2. Form positionstreu an die 1. Form binden
Hallo,
mir fällt da nur das manuelle ein. Mit dem Thema Docking könnte es evt. auch gehen. Damit habe ich mich leider noch nicht beschäftigt. :hi: edit: zu langsam, auf den Tip mit dem Panel hätte ich auch kommen können denn so habe ich es auch mal verwendet. |
Re: 2. Form positionstreu an die 1. Form binden
Oder vielleicht WM_MOVING abfangen? Ungetestet, nur so ein spontaner Gedanke.
|
Re: 2. Form positionstreu an die 1. Form binden
Hallo,
danke an alle für die Antworten! Ich habe himitsu´s Lösung verwendet - funktioniert sehr gut! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:24 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-2025 by Thomas Breitkreuz