Startbildschirm einblenden
-
Hallöle
stell mich mal wieder Doof an.
will ein Startbildschirm anzeigen.
Hab den auch vrobereitet usw. Nun will ich beim Programm start einen Timer starten und den Startbildschirm sichtbarmachen solange der Timer läuft (ca 5s)
void __fastcall TfrmHaupt::FormCreate(TObject *Sender) { ... TiStartbild->Enabled=true; frmHaupt->Visible=false; frmStartbildschirm = new TfrmStartbildschirm(this); ... } //Der Timer void __fastcall TfrmHaupt::TiStartbildTimer(TObject *Sender) { TiStartbild->Enabled=false; frmHaupt->Visible=true; frmStartbildschirm->Visible=false; }aber ich bekomme immer wieder die Fehlermeldung das meine Variable frmStartbildschirm nicht definiert ist. Wo muß ich die den eintragen?
Merci mal Felix
-
Als Membervariable in der Deklaration von TfrmHaupt vielleicht?
-
ÄHM bin irgendwie net ganz so fit in der C++ Welt was ist bitte ne Membervariable und wo trag ich die ein?
-
http://www.c-plusplus.net/cms/modules.php?op=modload&name=Downloads&file=index&req=viewsdownload&sid=2
wird wohl nicht schaden
-
TfrmHaupt ist doch irgendwo deklariert z.Bsp. frmHaupt.h oder so ähnlich. Da trägst du unter public: etwa sowas ein
TfrmSplash* frmSplash;
-
Also hab das jetzt mal probiert so wie du gesagt hast in der Haupt.h unter Public: folgendes einzutragen
public: // Anwenderdeklarationen __fastcall TfrmHaupt(TComponent* Owner); TfrmStartbildschirm* frmStartbildschirm; };in der Haupt.h
Fehler die dann angezeigt werden sind aber immernoch:
[C++ Fehler] Haupt.h(176): E2303 Typname erwartet
[C++ Fehler] Haupt.cpp(365): E2451 Undefiniertes Symbol 'frmStartbildschirm'
Vielleicht hilft dir das weiter ich steh grad auf dem Schlauch.
-
Du mußt den Typ TfrmStartbildschirm noch bekanntmachen. Entweder du inkludierst dort (Haupt.h) die Headerdatei wo TfrmStartbildschirm deklariert wurde oder du machst im Header erstmal eine forward-Deklaration (einfach "class TfrmStartbildschirm;" oben im Header außerhalb der Deklaration der Hauptform hinschreiben).
Im zweiten Fall muß das Inkludieren der Headerdatei von TfrmStartbildschirm dann in der Haupt.cpp erfolgen.
-
so das erzeugen wird jetzt zwar ohne Fehlermeldungen akzeptiert, aber ob es tatsächlcih gemacht wird weiß ich nicht.
folgendes passiert zur Zeit
Beim Start wird direkt der Hauptbildschirm angezeigt, obwohl dieser als visible = false definiert ist(im Objekt inspektor) und im Programm
void __fastcall TfrmHaupt::FormCreate(TObject *Sender) { ... TiStartbild->Enabled=true; frmHaupt->Visible=false; frmStartbildschirm = new TfrmStartbildschirm(this); ...}als visible=false geschrieben.
Das erzeugte Fenster ist überhaupt nicht zu sehen.
woran kann sowas den liegen?
MfG Felix
-
Vielleicht solltest du deinen Startbildschirm mit Hilfe von frmStartbildschirm->Show() auch noch anzeigen.
Allerdings besser nicht in OnCreate. Hast du dir diesen Beitrag durchgelesen?
http://www.bytesandmore.de/rad/cpp/snipp/sc06013.php