![]() |
Formulare auf PageControl werden nicht dargestellt
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
habe ein Problem, dass mich schon relativ lange und immer wieder beschäftigt. Ich habe öfter mal eine PageControl im Einsatz bei der ich auf jeder Seite ein anderes eigenes Formular anzeige. Diese Formulare werden dynamisch zur Laufzeit erzeugt. Wenn das dyn. Formular selbst auch eine PageControl enthält welche wiederum ein Formular anzeigt, kommt es beim ersten Start zu einem Anzeigeproblem. Dabei wird das Formular erst angezeigt, wenn ich einmal auf einen anderen TabSheet wechsle und zurück. Im Anhang habe ich ein Beispiel Projekt angehängt. (nichts besonderes - habe es nur schnell zusammen geklickt). Beim Start sollte die "Seite 1" korrekt aussehen und TabSheet 1 sollte befüllt sein. Beim Wechsel auf "Seite 2" sollte die PageControl auf "Seite 2" leer sein. Wird erst dargestellt nach Wechsel auf TabSheet2 und zurück auf TabSheet1. Kann ich mit Delphi XE2 und Delphi XE7 nachvollziehen. Habe es bisher immer mit Workarounds gelöst wie: Den Show der SubForms Timer gesteuert ausführen. Aber das ist auch nicht schön. Vielleicht hat hierzu einer eine Idee. Ich möchte allerdings keine Frames sondern Forms verwenden. In unserer Anwendung müssen die Sub-Forms auch eigenständig laufen können. Normalerweise verwende ich auch die PageControl von DevExpress. Das Problem habe ich auch da. Viele Grüße, Andreas |
AW: Formulare auf PageControl werden nicht dargestellt
Zitat:
|
AW: Formulare auf PageControl werden nicht dargestellt
Zitat:
Mich würde interessieren ob es eine Lösung mit den Formularen gibt oder ob grundsätzlich an der Vorgehensweise etwas nicht stimmt. Ich weiß auch gar nicht, ob das Problem nicht auch mit Frames besteht. |
AW: Formulare auf PageControl werden nicht dargestellt
Ich werfe jetzt mal
![]() Um eine Form zu einem PageControl hinzuzufügen genügt es:
Delphi-Quellcode:
Dabei wird
procedure Foo( APageControl : TPageControl; AForm : TForm );
begin AForm.ManualDock( APageControl, nil, alClient ); AForm.Visible := True; end;
Delphi-Quellcode:
automatisch als
TForm.Caption
Delphi-Quellcode:
verwendet.
TTabSheet.Caption
Ach ja, und die TabSheets brauche ich auch nicht erzeugen, denn diese werden durch das Docken automatisch erzeugt ;) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:34 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