MenuBar

Die MenuBar ist eine horizontale Menüzeile mit textbasierten Einträgen und Scroll-Funktionalität. Dieses Menü eignet sich durch seinen geringen Platzbedarf sehr gut für Anwendungen, bei denen das Menü ständig sichtbar sein soll. Ein spezieller Konstruktor-Parameter position ermöglicht die automatische Anordnung am oberen oder unteren Bildschirmrand (ALIGN_TOP, bzw. ALIGN_BOTTOM). Über die Methode setFont(Resource font) können außerdem individuelle Schriftarten eingestellt werden.

Das folgende Beispielprogramm VoleMenuBarExample baut ein Menü vom Typ MenuBar am unteren Bildschirmrand auf und stellt es dar. Um das Programm selbst ausprobieren zu können, laden Sie das ZIP-Archiv VoleMenuBarExample.zip herunter und öffnen anschließend das Projekt VoleMenuBarExample.jcp in Ihrer JControl/IDE.

Bild 2: Das VoleMenuBarExample

1    import jcontrol.ui.vole.Frame;
2    import jcontrol.ui.vole.menu.MenuBar;
3    
4    /**
5     * <p>This example demonstrates how to use the
6     * component MenuBar within the GUI framework
7     * JControl/Vole.</p>
8     *
9     * <p>(C) DOMOLOGIC Home Automation GmbH 2003-2005</p>
10     */
11    public class VoleMenuBarExample extends Frame {
12     
13      /**
14       * Create and show a MenuBar.
15       */
16      public VoleMenuBarExample() {
17    
18        // create the MenuBar
19        MenuBar menu = new MenuBar(0, 0, 128, 64, MenuBar.ALIGN_BOTTOM);
20       
21        // add some menu items
22        menu.addMenuItem("Red");
23        menu.addMenuItem("Green");
24        menu.addMenuItem("White");
25        menu.addMenuItem("Blue");
26        menu.addMenuItem("Cyan");
27        menu.addMenuItem("Black");
28        menu.addMenuItem("Gray");
29        menu.addMenuItem("Orange");
30       
31        // add the menu bar to the Frame
32        this.setMenu(menu);
33       
34        // disable a menu item
35        menu.enableMenuItem("White", false);
36    
37        // show the frame   
38        setVisible(true);   
39      }
40    
41      /**
42       * Instantiate the VoleMenuBarExample
43       */
44      public static void main(String[] args) {
45        new VoleMenuBarExample();   
46      }
47    }
Listing 1: VoleMenuBarExample.java