Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi MDI-Anwendung mit WindowMenu (https://www.delphipraxis.net/18935-mdi-anwendung-mit-windowmenu.html)

mscharf 26. Mär 2004 09:34


MDI-Anwendung mit WindowMenu
 
Hallo, ich habe eine MDI-Anwendung und möchte das WindowMenu benutzen.
Das funktioniert allerdings nicht richtig (benutze Delphi 5).
Es werden erst Eintragungen in das Menü gemacht, wenn ich das Menü "Fenster"
mindestens einmal geöffnet hatte.

Ein Beispiel:
Ich erzeuge 3 MDI-Childs, öffne dann das Menü "Fenster" ... keine Eintragungen!
Dann erzeuge ich noch ein Child, öffne "Fenster" ... nun werden alle 4 Childs angezeigt. :gruebel:

Muss ich vielleicht noch irgendeine Funktion zur Initialisierung aufrufen?

Taladan 26. Mär 2004 11:10

Re: MDI-Anwendung mit WindowMenu
 
Hört sich fast an, als hättest du die eintragungen im Menu im verkehrten Ereignis gepackt. Ist dein Menu (wie ich vermute) auf deinen MDI-Parent. Dort hast du wohl auch dein Ereignis rein gepackt. Vermutlich im OnCreate oder ähnlichen Ereignis. Dort liegt dan wohl auch der Fehler, denn deine Fenster existieren dann ja noch gar nicht, da das Parent als erstes erstellt wird. Eine Möglichkeit diesen (vermuteten) Fehler zu beheben währe, die Procedure die du aufrufst einfach bei jeden MDIChild ins OnCreate-Ereignis mit rein zu packen.

Poste am besten immer dein Prozedure bei solchen fragen mit, dann muß man keine Vermutungen anstellen.

Gruß dat Tala

mscharf 26. Mär 2004 12:48

Re: MDI-Anwendung mit WindowMenu
 
Diese Menü-Einträge werden automatisch hinzugefügt. Es gibt in meinem Programm keinen Code, welcher die Einträge macht. Dieses Window-Menü ist wohl eine Windows-Funktionalität.
In Delphi gibt es im Hauptformular (MDI-Parent) eine Eigenschaft WindowMenu ... dort trägt man das Menü ein, in welchem die Liste der MDI-Childs angezeigt werden soll (z.B. "Fenster").

Beispiel:

Fenster
---------
Überlappend
Horizontal anordnen
Alle verkleinern
1 Child1 <-- wird automatisch von Windows bzw. Delphi angehängt :coder:
2 Child2
...
n Childn


Diese Funktionalität scheint mir aber ziemlich sensibel zu sein.
Macht man beispielsweise einen Strich in das Menü, dann wird dort überhaupt nichts mehr eingetragen. :?:

Gruß mscharf


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:13 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz