form create?


Blunateddy

Grünschnabel
hab nur ne einfache frage..

ich hab 6 formulare werden die alle sofort Erstellt aber versteckt? oder wird erst beim aufruf mit show das form create ausgeführt?

wenn die formulare direkt erstellt werden, kann ich das iwie abstellen? das die erst sobald ich sie aufrufen möchte?
 

Dario Linsky

Erfahrenes Mitglied
Hallo,

zeig doch mal den Code, den du bis jetzt hast.

Mit der Create-Methode (Konstruktor) wird ja zunächst nur ein Objekt vom entsprechenden Typ erstellt. Damit ist es in jedem Fall schonmal im Speicher vorhanden. Angezeigt wird dieses Formular erst durch Aufruf der Show-Methode.

Grüße, D.
 

Blunateddy

Grünschnabel
hab nun in der projekt.cpp die erstellt wird vom projekt gesehen da steht

Code:
{
                 Application->Initialize();
                 Application->CreateForm(__classid(TForm1), &Form1);
       Application->CreateForm(__classid(Tfrm_trainer), &frm_trainer);
       Application->CreateForm(__classid(Tfrm_nuser), &frm_nuser);
       Application->CreateForm(__classid(Tfrm_nvokabel), &frm_nvokabel);
       Application->CreateForm(__classid(Tfrm_nlektion), &frm_nlektion;
       Application->CreateForm(__classid(Tfrm_nstatistik), &frm_nstatistik);

       Application->Run();
        }
        catch (Exception &exception)
        {
                 Application->ShowException(&exception);
        }
        catch (...)
        {
                 try
                 {
                         throw Exception("");
                 }
                 catch (Exception &exception)
                 {
                         Application->ShowException(&exception);
                 }
        }
        return 0;
}
haltepunkt gesetzt.. wird direkt ausgeführt am anfang.. das CREATE ^^
is danach auch direkt am anfang in das Create der anderen formulare gesprung..

was kann ich dagegen tun? wills erst später erstellen lassen
 

Dario Linsky

Erfahrenes Mitglied
Hi,

wenn du die anderen Formulare (abgesehen von Form1) erst später erzeugen lassen willst, kannst entweder die Starteinstellungen für das Projekt dahingehend ändern (gibt es im Menü, ich weiß aber gerade nicht, wie der Menüpunkt heißt) - oder aber du löscht einfach diese Zeilen aus dem Code. Könnte allerdings sein, dass die IDE sie vor dem Kompilieren wieder einfügt.

Grüße, D.