![]() |
MDI Child zur laufzeit erzeugen ?
hi,
wie kann ich ein MDI-Forumular zur laufzeit erzeugen UND direkt nachdem start meines programms anzeigen lassen? wenn ich es so versuche:
Delphi-Quellcode:
kann ich es in KEINEM event (oncreate, onactivate, onshow) aufrufen....immer fehler wie "MDIMainForm" nicht aktiv usw...
procedure CreateStatusWnd;
var form: TForm; begin form.Create(nil); form.FormStyle := fsMDIChild; form.Parent := Form1; form.WindowState := wsMaximized; form.Show; end; hat da jemand eine lösung? |
Re: MDI Child zur laufzeit erzeugen ?
Moin!
Ist denn auch eine Form aktiv zu dem Zeitpunkt mit der FormStyle fsMDIForm ? Du musst ja eine Hauptform haben damit du deren Kinder erstellen kannst... MfG Muetze1 |
Re: MDI Child zur laufzeit erzeugen ?
jo klar, Form1 ist ist das MDI Hauptfenster
|
Re: MDI Child zur laufzeit erzeugen ?
Ist es auch das Hauptfenster der Applikation?
|
Re: MDI Child zur laufzeit erzeugen ?
ja...........................
|
Re: MDI Child zur laufzeit erzeugen ?
Liste der Anhänge anzeigen (Anzahl: 1)
hi,
warum erstellst du dir keine Klasse alias TChild. Die Klasse kannst du dann im Hauptformular erstellen. Ich habe dazu ein Beispiel erstellt. Guck dir dazu auch die *.dpr an, denn da wird die Klasse nicht automatisch beim Starten deines Programms erstellt. |
Re: MDI Child zur laufzeit erzeugen ?
hallo big, dein beispiel klappt perfekt! danke schonmal.
leider bekomm ich das irgendwie nicht in mein prog... Mein erstes prob... ich habe ein MDIChild erstellt (designzeit), es heisst "Form3" und stammt von "TForm3" wie bennene ich das dann in "TChild" um? irgendwie gibt delphi mir fehler wenn ich den namen einfach so ändere. Das zweite... wie hast du es gemacht das das zur designzeit erstelle fenster zur laufzeit nicht erscheint? und das dritte... wieso haben alle neu erstellten childs die komponenten bereits da wo sie hinsollen, ich sehe nirgends das sie dort positioniert werden. ist das so weil das zur designzeit erstelle form bereits so aussieht? |
Re: MDI Child zur laufzeit erzeugen ?
hi,
ändere einfach den Namen im Formular von Form3 nach Child. Deine Klasse heißt nun TChild. Aber nicht Tchild eingeben. Ansonsten poste mal Code. |
Re: MDI Child zur laufzeit erzeugen ?
Moin!
2.: Projekt->Optionen->Formulare die Formulare von AutoCreate nach rechts bewegen. 3.: Hey, du hast das Wunder von Klassen entdeckt: einmal schreiben und x mal anlegen mit gleichem Verhalten, obwohl nur einmal Code geschrieben wurde. Die Klasse TChild legt aussehen und Verhalten fest - und das kannst du dir dann so oft anlegen bzw nutzen wie du willst. MfG Muetze1 |
Re: MDI Child zur laufzeit erzeugen ?
hallo an alle und danke 8)
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:05 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