![]() |
Mainform nach anderen Formen createn
Hallo,
wie bekommt man es hin, das die Form1 nach den übrigen Formen erstellt wird, aber trotzdem das Hauptformular ist? Ich brauche nämlich Daten aus den anderen Formen, die zu dem Zeitpunkt natürlich noch nicht "created" sind. Das "FormShow" event der Form1 fällt weg, da ich wenn ein Checkbox einer anderen Form aktiviert ist, die Form1 nicht anzeigen möchte. Befehle wie application.minimize oder hide sind im OnShow event nicht möglich. Mfg Salomon |
Gar nicht. Das erste erstellte Form wird automatisch das MainForm.
Aber, füge in den Public Bereich Deines Form eine Procedure hinzu, welche zum Beispiel InitData heisst, und rufe die im Programm direkt vor Application.Run mit Form1.InitData auf. |
Hört sich gut an, nur mache ich noch was Falsch. Momentan sieht das bei mir so aus:
Form1:
Code:
In Hauptprogramm dann so:
private
{ Private declarations } public { Public declarations } Procedure InitData; end;
Code:
Ich bekomme dann die folgende Compiler Fehlermeldung:
begin
Application.Initialize; Application.Title := 'Salomon''s Relais8 Controll'; Application.CreateForm(TForm1, Form1); Application.CreateForm(Tprogconfig, progconfig); Application.CreateForm(Tcomconfig, comconfig); Form1.InitData; // Daten initialisieren Application.Run; end. [Error] Unit1.pas(140): Unsatisfied forward or external declaration: 'TForm1.InitData' Was mache ich an den Deklarationen falsch? Mfg Salomon |
Du musst in die Unit von Form1 noch die eigentliche Prozedure
TForm1.InitData; begin .... end; einfügen. Delphi findet zwar die Deklaration, aber nicht die Implementation. |
Du hast recht, ich hatte bei der Implementierung das TForm1 vor dem Procedure Namen vergessen.
|
Diesen Fehler kannst Du recht einfach umgehen, indem Du, nach dem deklarieren der Funktion [Ctrl]+[Alt]+[C] drückst. (Code-Completion)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:30 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