Die Schnittstelle IMenu liefert die Basisfunktionen für das Main Menu das Sub Menu sowie das Popup Menu. Es folgt eine kurze Beschreibung der wichtigsten Methoden:
Mit Hilfe der folgenden Methoden kann das Model gesetzt und ausgelesen werden. Siehe auch Menü und Item Models.
    void setModel(IMenuModel model);
    
    IMenuModel getModel();Mit Hilfe der folgenden Methoden können Items zu einem Menü hinzugefügt werden:
    <WIDGET_TYPE extends IMenuItem> WIDGET_TYPE 
        addItem(IWidgetDescriptor<? extends WIDGET_TYPE> descriptor);
    <WIDGET_TYPE extends IMenuItem> WIDGET_TYPE 
        addItem(int index, IWidgetDescriptor<? extends WIDGET_TYPE> descriptor);
    IActionMenuItem addAction(IAction action);
    IActionMenuItem addAction(int index, IAction action);
    IMenuItem addSeparator();
    IMenuItem addSeparator(int index);Die ersten beiden Methoden verwenden dazu einen Descriptor (BluePrint). Folgende Items können so hinzugefügt werden:
                         Die Methoden addAction() fügen ein
                         Action Menu Item
                         hinzu, welches an die übergebene IAction
                         (siehe Actions and
                            Commands) gebunden wird. Mit Hilfe von
                         addSeparator() kann ein
                         Separator Menu Item
                         mit verkürzter Schreibweise hinzugefügt werden. Wird ein
                         index angegeben, wird das Item an der
                         entsprechenden Stelle eingefügt, ansonsten am Ende.
                       
            
Das folgende Beispiel demonstriert die Verwendung:
  1      IMainMenu menu = menuBar.addMenu("Menu");
  2      IActionMenuItem action1 = menu.addItem(BPF.menuItem("Action1"));
  3      IActionMenuItem action2 = menu.addItem(BPF.menuItem("Action1"));
  4      menu.addItem(BPF.menuSeparator());
  5      ISelectableMenuItem opt1 = menu.addItem(BPF.checkedMenuItem("Option1").setSelected(true));
  6      ISelectableMenuItem opt2 = menu.addItem(BPF.checkedMenuItem("Option2"));
  7      menu.addSeparator();
  8      ISelectableMenuItem radio1 = menu.addItem(BPF.radioMenuItem("Radio1").setSelected(true));
  9      ISelectableMenuItem radio2 = menu.addItem(BPF.radioMenuItem("Radio2"));
 10      ISelectableMenuItem radio3 = menu.addItem(BPF.radioMenuItem("Radio3"));
 11      menu.addSeparator();
 12      ISubMenu subMenu = menu.addItem(BPF.subMenu("Sub Menu"));
 13      IActionMenuItem subaction subMenu.addItem(BPF.menuItem("Subaction"));
                         In Zeile 4 wird eine
                         Separator mit Hilfe
                         des BluePrint hinzugefügt, in Zeile 7 und 11 mit Hilfe der
                         Convenience Methode addSeparator().
                       
            
Das Ergebnis sieht wie folgt aus: