Zitat von
kalmi01:
Zitat:
Such mal nach Outlookbar. Das ist so eine Komponente die am Rand die Einträge untereinander darstellen kann.
Oder Du packst eine Toolbar auf Deine Form, Align = alRight eingestellt.
In "Menu" von Toolbar Dein MainMenu eintragen und fertig.
Auf diese Weise kannst Du Dein MainMenu quasi überall platzieren.
Es gibt noch eine Möglichkeit das mit den Delphi Standardkomponenten zu lösen.
Die ist optisch etwas ansprechender, aber auch etwas (ein wenig) aufwendiger.
Delphi verwendet intern (in der
IDE) auch diese Menütechnik.
- Folgende Komponenten auf das form legen:
- TImageList (Win32-Palette)
- TActionManager (Zusätzlich-Palette)
- TActionMainMenuBar (Zusätzlich-Palette)
- AcionManager.ImageList zuweisen
- ActionManager doppelklicken -> es öffnet sich der ActionManager Editor
- Auf Tab Aktionen gehen und neue Actionen erzeugen (Einfügen Taste)
Keiner Tip: Auch mal die StandardActions (Strg+Einfügen) anschauen, spart viel Arbeit.
(Die braucht man dann nicht nochmal zu programmieren)
- per Drag und Drop können die Menüs in die ActionMainMenubar gezogen werden.
(Wenn man die Kategorien auf die Menubar zieht, wird automatisch der komplete Inhalt übernommen.)
- Bei eigenen Actions müssen natürlich die Properties angepasst werden (Caption, Imageindex, ...)
Das Ereignis onExecute der Actions wird aufgerufen, wenn der Menüpunkt aktiviert wurde.
Mit Actions ist man sehr flexibel. Man kann sie in der ActionMenubar verwenden, baer auch in den ActionToolbars oder den "normalen" Toolbars, MenuItems, BitBtns, SpeedButtons, ...Eben überall dort wo es eine Eigenschaft Action gibt.
Diese ActionMenubar kann man natürlich auch mit align beliebig platzieren
(oben, unten, rechts, links oder wo man sonst will.)
Ach ja, das oben beschriebene geht auf jeden Fall mit Delphi 7 aufwärts.
Ich weis nicht ob die Action Komponenten in den älteren Delphi Versionen vorhanden sind.