früher oder später kommt der Punkt an dem man für eine Applikation ein ordentliches Layout und damit auch einen Fenstermanager bzw Objektmanager braucht.
im aktuellen Projekt möchte ich dem Benutzer die Möglichkeit geben aus drei Stilen (siehe scribble) zu wählen.
Den Fenstermanager habe ich derzeit mit Hilfe des Generators http://www.michael-fuchs.net/rubriken/edv/tools/fcgt/ umgesetzt.
Die liefert auch gleich den ersten Designstil mit den frei fliegenden Fenstern.
mit etwas Erweiterung und einem TPageControl lassen sich die Fenster auch in vom Programm erzeugte TTabsheets eindocken.
Dazu die erste Frage:
Nutzt ihr zu so einem Job
Code: Alles auswählen
TForm.ManualDock(<docksite>, NIL, alClient);
Code: Alles auswählen
TForm.Parent:=<docksite>
Beim zerstören der eingedockten Fenster muss ich auch im TTabControl aufräumen, also den als Docksite "missbrauchten" TTabsheet löschen.
Wie ermittle ich das Control in dem das Fom eingedockt ist ?
geht das mit GetParentComponent ?
oder wie?
Die Verwendung von TPageControl hat noch einige Haken und Ösen.
Trotzdem nochmal die Frage ob TTabcontrol mit einem getrennten TPanel als Docksite nicht besser ist? Dazu gibt es unterschiedliche Standpunkte. Einer der mit eingeleuchtet hat ist: wenn gleichartige Objekte (das Beispiel waren Webseiten in einem tabbed Browser) angezeigt werden, dann TTabControl, für unterschiedliche sollte TPageControl verwendet werden
Jetzt sind das im aktuellen Projekt alles unterschiedliche Forms des Typs TForm die aber recht unterschiedliche Funktionen haben -- also was nun ?

Der dritte Stil ist dann schon wieder eine andere Dimension, dann brauchts einen echten Dockmanager -- mit welchem habt ihr gute Erfahrungen gemacht ?
Danke im voraus