Announcement

Collapse
No announcement yet.

Von fsNormal Formular auf fsMDIChild zugreifen

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

  • Von fsNormal Formular auf fsMDIChild zugreifen

    Hallo,

    ich habe eine Anwendung mit unterschiedlichen MDIChild Formularen. In einem MDIChild wird ein normales Formular (fsNormal) geöffnet. Dieses Formular soll nun Zugriff auf die Elemente des MDIChilds bekommen. Wie kann ich z.B. über einen Button in diesem normalen Formular auf ein Edit1 Feld im MDIChild zugreifen?

    Vielen Dank im Voraus

  • #2
    Hallo!<br>
    Über eine Callback-Funktion läßt sich sowas (auch designtechnisch) sehr chick lösen.<br>
    Im aufzurufenden Formular:<br>
    type<br>
    MyCallback = procedure of object;<br>
    TForm2 = class(TForm)<br>
    private<br>
    F_Callback: MyCallback;<br>
    public<br>
    property P_Callback : MyCallback read F_Callback write F_Callback;<br>
    end;<br>
    <br>
    Im aufrufenden Formular:<br>
    with TForm2.create ( Appication ) do begin<br>
    P_Callback := MeinCallback;<br>
    end;<br>
    <br>
    procedure TForm1.MeinCallback;<br>
    begin<br>
    self.color := green;<br>
    end;<br>
    <br>
    Klappt und ist eine saubere Trennung der beiden Formulare!<br>
    Das Ganze geht natürlich auch mit einer Funktion als Callback.<br>
    <br>
    BYE BERND<br&gt

    Comment


    • #3
      Da nur das MainForm ein fsMDIForm sein kann, kann man somit über Application.MainForm.MDIChildCount und Application.MainForm.MDIChildren[Index] auf die MDI Clients der Anwendung zugreifen.

      Gruß Hage

      Comment


      • #4
        Dank

        Comment

        Working...
        X