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