Announcement

Collapse
No announcement yet.

MDIChild schliessen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • MDIChild schliessen

    Hallo Leute, <br>
    ich habe das Problem, dass ich ein dynamisch erstelltes MDIChild mittels eines CLOSE-Buttons, der sich auf dem MDIChild befindet, schliessen möchte. Dies funktioniert aber nicht so einfach mit Form.Close, wie ich feststellen musste. Wie kann ich das MDIChild schliessen? <br> Gruss und vielen Dank <br>Beat

  • #2
    Was passiert, bzw. was passiert nicht wie erwartet. Normalerweise sollte sich das Form, egal ob MDI oder SDI, schließen.<br>
    Wenn du über den Schließen Button in der Titelzeile schließt, funktionierts dann auch nicht ??<br>
    Überprüfe mal ob du im OnCloseQuery() Event code stehen hast.<br>

    Gruß Hage

    Comment


    • #3
      Hallo Hagen <br> ich habe das Problem gefunden: irgendwie habe ich die Child-Formulare im Hauptformular als Variablen deklariert (Form2 : TForm2). Diese Deklarationen gehören natürlich nur ins entsprechende Child-Formular. Dann funktioniert's. <br>Gruss Bea

      Comment


      • #4
        Ah, im Form1.OnButtonClick() hast du stehen Form1.Close !! Richtig !.<br>
        Nun, über Form1.Close greifst du auf die globalen Form Variablen zu. Dies solltest du wann immer möglich strikt vermeiden. Im grunde ist das Konzept der globalen Formular Variablen ein sehr schlechtes, es gibt aber keinen einfacheren Weg,.<br>

        In Deinem Falle ist Form1.OnButtonClick() eine Objectmethode vom Form1. Innerhalb solcher Object Methoden hat man eine unsichtbare Variable "Self". In diesem Falle ist Self = Form1. Somit ruft man NICHT Form1.Close sondern besser Self.Close; auf da sich dann das Close immer auf das Object das OnButtonClick() Implementiert bezieht.<br> Als Shortcut kann man nun noch das Self. weglassen, es reicht also eindfach "Close;".

        Im selben Atemzug hat sich dein problem auf natürliche Weise geklärt, keine globale Variablen Verwechslungen mehr, und alles wird viel sicherer.<br>

        Gruß Hage

        Comment


        • #5
          Hallo,

          ich release'e mein MDI immer, mach iuch da was falsch ??

          Gruß Andrea

          Comment


          • #6
            Nö, spart resourcen :=

            Comment

            Working...
            X