Announcement

Collapse
No announcement yet.

Ein Formular zum MDI-Kindfenster machen

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

  • Ein Formular zum MDI-Kindfenster machen

    Mondajemi schreibt
    Ein Formular zum MDI-Kindfenster machen
    Eine Eigenschaft, die ein Formular zum MDI-Kindfenster macht, gibt es nicht.
    Ein Formular wird zum MDI-Kindfenster, indem seine MdiParent-Eigenschaft zur Laufzeit mit einem Verweis auf das MDI-Hauptfenster belegt wird.
    Diesen letzten Satz verstehe ich nicht.
    Ich bin wirklicher Anfänger.
    Wer erklärt mit verständliche was ich machen muss.
    Gruß
    Schüler

  • #2
    Hallo Schüler,

    im Formular das der MDI-Parent sein soll muss die Eigenschaft "IsMdiContainer" auf true gesetzt sein, damit es Kinderformulare akzeptieren kann.

    In jedem Formular das als Kindformular erscheinen soll muss die Eigenschaft "MdiParent" auf das Elternformular gesetzt werden.

    ZB wird im MdiParent-Formular ein Child-Formular derart aufgerufen:
    Code:
    Dim frm As New Form1()
    frm.MdiParent = Me
    frm.Show()
    In obigen Bsp verweist als die MdiParent-Eigenschaft auf das Elternformular (Me) von dem es auch gestartet wird.

    Hoffe es ist verständlich.

    mfG Gü
    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

    Comment


    • #3
      Hallo gfoild
      leider verstehe ich deinen Beitrag nicht
      Ich habe jetzt folgendes versucht
      Public Class Form1
      Dim frm As New Form1()
      frm.MdiParent1 = Me.MdiParent1
      frm.Show()
      End Class
      Das bringt anfangs Deklarations Fehler
      Meine Masken heißen MdiParent1, Form1, Stammbaum
      Ich heiße nicht nur Schüler, ich bin auch einer
      Gruß vom Schüler (74)
      Dies ahbe ich bei Form1 eingefügt

      Comment


      • #4
        Hi Schüler,

        was gibts da nicht zum Verstehen?

        verwendest du Visual Studio oder einen Text-Editor?

        Bei Visual Studio wird beim Eingeben von frm. IntelliSense eingeblendet und dann gibt bei MdiParent eine Markierung von M, D, I, P... als Tastenanschläge erkannt werden.

        D.h. mit
        frm.MdiParent = Me

        Die Eigenschaft IsMdiContainer wird im Designer gesetzt.

        sollte es gehen.
        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

        Comment


        • #5
          Hallo gfoild
          Ich verwende VB.2008
          Muss ich denn für das "Unterfenster" IsMidicontainer auf False setzen.
          Unter den Eigenschaften eines solchen Fensters sehe nirgends was irgendwie ChildKind oder ähnlich heißt
          Danke für nochmalige Antwort
          Der Schüler

          Comment


          • #6
            IsMdiContainer hat den Standardwert = false. D.h. es muss nicht explizit gesetzt werden.

            frm.MdiParent = Me wird im Code gesetzt.

            Ein Blick in dies MSDN kann auch hilfreich sein.

            mfG Gü
            "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

            Comment

            Working...
            X