dyn Form aus automat. erstellter Form?



  • Hi,

    was ist zu beachten wenn eine Form dyn. aus einer automatisch erstellten Form erstellt werden soll?

    Also: in dem auto. erstellten Form ist ein Button. In dessen OnClick eine weitere Form dynamisch erstellt werden soll, also mit

    try
    	{
    		form = new TForm(this);
    		form->ShowModal();
    	}
    	catch (...)
    	{}
    

    Aufgeräumt wird auch noch, Header und alles andere passt.

    Allerdings kommt im Debug Mode beim ausführen der Anwendung bereits ein Fehler, das ReleaseBuild startet erst gar nicht???

    grüssle 🙂



  • Hallo

    Grundsätzlich ist dagegen nichts einzuwenden. Dein Quellcode ist soweit korrekt. Wenn du ein Konzept fürs Aufräumen hast, hast du an alles wichtige gedacht.

    Dein Fehler muß einen konkreten Grund aus deinem weiterem Quellcode haben.

    bis bald
    akari



  • akari schrieb:

    Hallo

    Grundsätzlich ist dagegen nichts einzuwenden. Dein Quellcode ist soweit korrekt. Wenn du ein Konzept fürs Aufräumen hast, hast du an alles wichtige gedacht.

    Dein Fehler muß einen konkreten Grund aus deinem weiterem Quellcode haben.

    bis bald
    akari

    Stimmt. Ist ja auch Code, der Copy&Paste, mehrfach erfolgreich erprobt 🙂

    Dummerweise habe ich einen relevanten Header falsch( hinter den TForm Header ) gesetzt. Deswegen kommt keine Meldung, nur wenn er dann gebraucht wird ... 😮 😡

    *kopfklatsch*

    Thx & grüssle 🙂



  • Hallo,

    Solange man die Form so erstellt

    form = new TForm(this);
    

    muß man noch nicht mal ans Aufräumen denken, da das ja die Form in der erstellt wird erledigt. Das this im TForm-Konstruktor ist der Owner. Der ist für das Aufräumen zuständig.



  • Is klar. Läuft jetzt auch fast gut.

    Fast, weil: Debug = läuft, Release kommt beim Start:

    externe exception 406D1388
    

    Aus der IDE gestartet läuft das Prog nach drücken von 'Fortsetzen', sonst geht nichts mehr.

    Kennt jemand diese Exception? Google hat mich nicht weitergebracht?!
    Ich tippe mal auf fehlende Bibliothek, aber welche???

    grüssle 🙂

    Edit: liegt an Indy10. Habe mal testweise den About Dialog genommen, und dann läufts. TIdFTP auf den Dialog, Exception.
    Nur: Im Debug Mode läuft es, im Release nicht. Habe dann die Packages kontrolliert, drei Indy Packages sind da, Release Packages 😕


Anmelden zum Antworten