schliessen einer Mdi Child Form



  • Hallo,

    habe ein seltsames Problen.
    wenn ich ein MdiChildForm schliessen möchte, wird die MdiChildForm minimiert.

    Child Aufruf:

    TMultiChildForm *Child;
    Child = new TMultiChildForm(Application);
    Child->Show();
    

    MdiChild Einstellungen:
    BorderIcon sind alle true,
    BorderStyle = bsNone,
    FormStyle = fsMdiChild,

    was habe ich falsch eingestellt oder gemacht ?

    Gruß Siegfried

    😞



  • Hallo,
    die Form2 in dem Beispiel ist die Child-Form. Die Funktion ist das Handle des Ereignis OnClose der Form.

    void __fastcall TForm2::FormClose(TObject *Sender, TCloseAction &Action)
    {
    	Action = caFree;
    }
    

    Viel Erfolg
    evi48



  • Im OnClose Ereignis des MDIChilds muß Action gesetzt werden.

    Aus der Hilfe:

    Wert Bedeutung

    caNone Das Formular darf nicht geschlossen werden, daher geschieht nichts.
    caHide Das Formular wird nicht geschlossen, sondern lediglich verborgen. Die Anwendung kann nach wie vor auf das Formular zugreifen.
    caFree Das Formular wird geschlossen und sein Speicher freigegeben.
    caMinimize Das Formular wird nicht geschlossen, sondern als Symbol angezeigt. Bei untergeordneten MDI-Formularen ist dies die Standardeinstellung.

    Also

    void __fastcall OnClose(TObject* Sender, TCloseAction &Action)
    {
      Action = caFree; // oder caHide
    }
    


  • Hallo,

    danke für deine Info's

    habe inzwischen auch gefunden, aber du wars etwas schneller als ich.

    Gruß Siegfried

    👍


Anmelden zum Antworten