31.1 Übersicht

Die Menubar-Klasse (Menüleiste) dient zur Verwaltung von einer Menüleiste, die über das Attribut Window.Menubar an Fenster angehängt werden kann. Eine Menüleiste enthält eine Anzahl von Elementen, die Objekte der Menu-Klasse sind, wobei jedes von ihnen genau ein Menü beschreibt.

In einer XML-Datei wird ein Menübaum mit den Tags <menubar>, <menu> und <item> definiert. Hier ist eine Beispiel-Definition einer einfachen Menüleiste:

 
<menubar id="mymenubar">
    <menu title="_File">
        <item>_New...</item>
        <item>_Open...</item>
        <item/>
        <item>_Save</item>
        <item>S_ave as...</item>
        <item/>
        <item>_Quit</item>
    </menu>
    <menu title="Edit">
        <item shortcut="Ctrl+X">_Cut</item>
        <item shortcut="Ctrl+C">C_opy</item>
        <item shortcut="Ctrl+V">_Paste</item>
    </menu>
    <menu title="?">
        <item>Se_ttings...</item>
        <item/>
        <item>A_bout...</item>
        <item>About _RapaGUI...</item>
    </menu>
</menubar>

Beachten Sie die Verwendung des Unterstrichzeichens im obigen XML-Code: Sie können dieses Zeichen verwenden, um das nächste Zeichen automatisch als Tastaturkürzel für den Menüeintrag zu kennzeichnen. Dies ist sehr nützlich, da viele Leute gerne die Tastatur anstelle der Maus benutzen, besonders wenn es darum geht, die gleichen Aktionen mehrmals zu wiederholen. Daher ist es immer eine gute Idee, Tastaturkürzel einzurichten. Siehe Tastaturkürzel für Details.

Wenn Sie komplexere Tastaturkürzel benötigen, z.B. Ctrl+V zum Einfügen, können Sie das Attribut Menuitem.Shortcut verwenden, um eine solche Verknüpfung einzurichten. Beachten Sie, dass auf einigen Plattformen (z.B. Windows) beide Arten von Verknüpfungen gleichzeitig angegeben werden können: Verknüpfungen, die mit dem Unterstrichzeichen angegeben werden, und Verknüpfungen, die mit dem Menuitem.Shortcut definiert werden. Wenn eine bestimmte Plattform nur eine Art von Verknüpfung unterstützt, hat die in Menuitem.Shortcut angegebene Verknüpfung Vorrang vor der mit dem Unterstrichzeichen.

Beachten Sie auch die leeren <item/> im obigen XML-Code: Diese fügen eine Trennlinie in den Menübaum ein. Die Verwendung von Trennlinien macht Ihr Menü für den Endbenutzer besser lesbar. Nachdem Sie die XML-Definition oben geschrieben haben, können Sie die Menüleiste zu einem Ihrer Fenster hinzufügen, indem Sie das Attribut Window.Menubar wie folgt verwenden:

 
<window menubar="mymenubar">
...
</window>

Es ist sehr wichtig zu beachten, dass Sie Ihre Menüleisten im Bereich <application> definieren müssen, da Menüleisten globale Objekte sind und erst später an Fenster oder Widgets angehängt werden. Deshalb ist es nicht erlaubt, Menüleisten innerhalb eines <window> XML-Bereichs zu definieren.


Navigation zeigen