MDI-Anwendung
ich möchte folgende Konstruktion: Hauptwindow-->MDIWindow-->Childwindow. Geht das?
ich habe folgendes gemacht: Hauptformular ist schon aktiv nun, erstelle ich aus einem Hauptformular heraus ein MDI Formular: if not IsFormOpen('Form2') then begin Form2 := TForm2.Create(Self); Form2.FormStyle := fsMDIForm; Form2.Show; end; das geht ja noch ganz gut und sehe auch das MDIFormular. Nun möchte ich vom neu erstellten MDIFormular aus mit einem Button beliebig viele ChildWindows erzeugen: zB. so: procedure TForm2.SpeedButton1Click(Sender: TObject); begin if Form2.Visible then Form2.CreateMDIChild('Auftr_12345'); end; procedure TForm2.CreateMDIChild(const Name: string); var Child: TForm3; begin Child := TForm3.Create(Application); Child.Caption := Name; end; wenn ich das mache, bekomme ich folgende Fehlermeldung: Exception der Klasse EInvalidOperation aufgetreten. Meldung: Formular kann nicht erstellt werden, zur sind keine MDI-Formulare aktiv! Warum kennt er das MDI-Formular nicht! Hat jemand eine Idee? fredi |
Re: MDI-Anwendung
Statt mit
Delphi-Quellcode:
dein MDI Form zu öffnen, nutze mal lieber folgenden Code:
Form2 := TForm2.Create(Self);
Delphi-Quellcode:
with TForm2.create (Self) do begin
Show ; end ; |
Re: MDI-Anwendung
Zitat:
Das kann man natürlich auch umgehen. Das ist aber dann sehr aufwändig. |
Re: MDI-Anwendung
habe inziwischen über das ganze noch einmal nachgedacht und bin zu der Überlegung gekommen, dass ich das ganze mit Frames machen sollte. Ich habe inwischen schon nach im WWW Musterbeispielen gesucht aber nichts gefunden.
Die Delphi Hilfe ist ja nicht wirklich Aussagefähig. Wo kann ich dazu was finden. Bitte um ein paar Infos wie ich ein Frame als eigenes Window aus einem anderen Window heraus aufmachen kann. fredi |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:35 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz