Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi mainmenue auf mehreren Formen (https://www.delphipraxis.net/52677-mainmenue-auf-mehreren-formen.html)

Lilo 1. Sep 2005 13:20


mainmenue auf mehreren Formen
 
hoi ^^

hab mal ne frage und zwar wie kann ich es am einfachsten realisieren das mainmenue auf mehreren formen zu verwenden, ohne das ich die meldenung bekomme das es schon verwendet wird und ohne das man sieht das das menue bei show oder create auf der neuen form eingefügt wird?

was gibts da so für möglichkeiten?

edit:
um das noch ein bisschen konkreter zu machen ^^ ich habe auf form1 ein menue und die dazugehörigen proceduren... wenn ich auf form 2 wechsel hau ich aus form 1 das menue raus und trage das menue in form 2 ein damit ich die ganzen proceduren net nochmal neu schreiben muss ...

ich setze durch buttonklick form2.show und kann ja erst dann das menue von form1 wegnehmen und bei form2 darstellen lassen und das sieht man ^^ es flackert sehr komisch ^^
ich hab mir da jetzt so pseudomenues gebastelt die sehen genau so aus und ich tausche die dann immer gegeneinander aus ^^ aber da muss es doch ne alternative geben ohne das ich die proceduren für das menue auf jeder form neu schreiben muss ^^



gruß
lilo

marabu 1. Sep 2005 19:17

Re: mainmenue auf mehreren Formen
 
Hi Lilo,

einen menu bar (TMainMenu) gibt es in der Regel nur in primary windows. Ein Indiz für das Vorliegen eines primary windows ist das Auftauchen des Formulars in der Fensterliste der Anwendung, oder auch einfach der BorderStyle bsSizeable.

Es ist durchaus professionell, wenn solche primary windows ihre jeweils eigenen menu bars besitzen. Wenn du auf der Suche nach Möglichkeiten der Wiederverwendung bist, dann schau dir einmal die Komponente ActionList an. Du kannst den items der verschiedenen main menus die gleichen actions zuweisen.

Eine andere Vorgehensweise ist möglich, wenn immer nur ein Fenster sichtbar ist. Dabei werden die wechselnden Fenster als ChildForms oder Frames geführt und das Hauptmenü ist dem übergeordneten Fenster (parent window oder auch shell window) zugeordnet.

Die von den actions verwendeten und fachlich motivierten Prozeduren gehören in eigene units. Bei den technisch motivierten Prozeduren ist das eher eine pragmatische Frage.

Konkrete Vorschläge kann ich nur machen, wenn ich die Anforderungen besser kenne, aber vielleicht kommst du ja schon so auf die richtigen Ansätze.

Grüße vom marabu

arbu man 1. Sep 2005 19:22

Re: mainmenue auf mehreren Formen
 
setz doch überall wo du ein mainmenu brauchst ein toolbar hin und weise der toolbar.menu das mainmenu zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:10 Uhr.

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