Hallo,
seit einer Layout-Änderung hat mein Programm einen merkwürdigen Fehler. Ich habe ein Panel in Form2 hinzugefügt und dort vorhandene Komponenten reingezogen. Auf Form1 öffne ich in einem OnEnter-Event eine Kalender-Komponente (Parent dieser Komponente ist TScrollBox).
Das ganze funktioniert auch wie gewünscht, bis ich Form2 aufrufe:
Delphi-Quellcode:
if NOT Assigned(Form2) then
Form2 := TForm2.Create(Self);
Form2.Show;
Form2.WindowState := wsNormal;
Sobald ich mit dem Debugger dort rein gehe, ist Form1.Kalender.Parent leer - zumindest die Eigenschaft Name - und mein Kalender wird danach nicht mehr angezeigt (Form1.Kalender.Showing ist false). FormCreate ist die Standard-Methode, keine überladene oder eigene.
Mein Workaround funktioniert auch nicht:
Delphi-Quellcode:
if (Kalender.Parent <> ScrollBox1) then begin
RemoveControl(Kalender);
ScrollBox1.InsertControl(Kalender);
end;
Form1.Kalender.Showing ist dann zwar nicht mehr false, aber der Kalender ist nicht sichtbar.
Die Positionsangaben setze ich zur Sicherheit ebenfalls neu.
Hat irgendjemand eine Idee, woran es liegen könnte? Der Aufruf anderer Formulare funktioniert wie gewohnt.
Ich bedanke mich im Voraus.