Frame

Die Klasse jcontrol.ui.wombat.Frame zeichnet für die Tastaturabfrage, das Event-Handling, das Focus-Management und nicht zuletzt das Zeichnen der Komponenten verantwortlich. Der folgende Quelltext zeigt eine einfache Anwendung, die ein Label-Component und zwei Button-Components darstellt.

Bild 2: Screenshot des WombatExampleBase-Programms

1    import jcontrol.ui.wombat.Button;
2    import jcontrol.ui.wombat.Container;
3    import jcontrol.ui.wombat.Frame;
4    import jcontrol.ui.wombat.Label;
5    
6    /**
7     * <p>This example demonstrates how to implement JControl
8     * applications with a graphical user interface
9     * using the GUI framework JControl/Wombat.</p>
10     *
11     * <p>(C) DOMOLOGIC Home Automation GmbH 2003-2005</p>
12     */
13    public class WombatExampleBase extends Frame {
14    
15      Button b1, b2;
16      Label l;
17    
18      /**
19       * Create and show a label and two buttons.
20       */
21      public WombatExampleBase() {
22        // create some components
23        l = new Label("Welcome to Wombat!", 0, 5, 128, 10, Label.STYLE_ALIGN_CENTER);
24        b1 = new Button("Button 1", 8,20,50,12);
25        b2 = new Button("Button 2", 62,20,50,12);
26    
27        // creates a new componaint container
28        Container c = new Container();
29    
30        // add the components to the container
31        c.add(l);
32        c.add(b1);
33        c.add(b2);
34       
35        // add container to this frame
36        setContent(c);
37       
38        // make the frame visible
39        setVisible(true);
40      }
41    
42      public static void main(String[] args) {
43        new WombatExampleBase();
44      }
45    }
Listing 1: WombatExampleBase.java

Bild 2 zeigt einen Screenshot von obigem Beispielprogramm. Wenn Sie den Quelltext dieses Beispiels herunterladen, in ein neues JControl/IDE-Projekt einfügen und dann den Simulator starten, sehen Sie das GUI-Framework JControl/Wombat in Aktion. Die Klasse Frame sorgt automatisch für eine kontinuierliche Abfrage der Tastatur, durch Bewegen des Tasters am JControl-Gerät können Sie den Eingabefokus zwischen den beiden Buttons hin- und herschalten. Da wir in dem Beispielprogramm jedoch keinen ActionListener für die Buttons installiert haben, empfängt das Programm keine ActionEvents und kann somit auch nicht auf das Betätigen eines Buttons reagieren. Wie Events verarbeitet werden, können Sie in Kapitel 4 dieses Tutorials nachlesen (Event-Handling).