Variablenaustausch zw. dyn.Childs?



  • Hallo!

    Ich habe ein dynamisch erstelltes Child-Fenster.
    Ich möchte jetzt, wenn ich auf einen Button drücke, ein (möglichst modales)Fenster aufgeht.

    Dort gebe ich ein Wert ein und drücke wieder auf ein Button.
    Dieser Wert sollte jetzt auf mein erstes Child-Fenster übertragen werden.

    Nur wie stelle ich das an?

    z.B.

    ----bei Button-Click im Child1-----

    Child2->Show()  (oder ShowModal() )
    

    ------------------------------------

    beim Schließen von Child2----------

    Child1->Edit1->Text="TEST";
    

    -----------------------------------

    Funktioniert nicht - Fehler: EAccessViolation
    eigentlich klar - er kann das dyn. erstellte Child1 nicht mit Child1->blabla ansprechen.

    Wie kann ich das sonst machen?

    Gibts viell. irgendwas mit parent->Edit1->Text=blabal.. oder so?

    Vielen Dank schonmal im Vorraus für eure Hilfe!

    Martin



  • Übergib doch Deinem modalen Fenster eine Referenz auf das rufende Fenster.
    Du könntest beispielsweise die Methode Show() oder ShowModal() überschreiben:

    int __fastcall ShowModal(TForm* RufendesFenster);
    

    Gruß,

    Alexander



  • TMDIChild *Child = (TMDIChild *)ActiveMDIChild;
    Child->Edit1->Text = "TEST";
    

Log in to reply