Methode | Beschreibung |
DigitalMeter(int x, int y, int digits, int decimals) | Erstellt ein neues DigitalMeter an der angegebenen Position. Der Parameter digits bestimmt die Anzahl der angezeigten Dezimalziffern. Breite und Höhe der GUI-Komponente ergeben sich aus der Anzahl Ziffern und der mittels setFont eingestellten Schriftart. decimals gibt die Anzahl der Nachkommastellen an, die in digits enthalten sind (an entsprechender Stelle wird ein Komma eingefügt). |
SevenSegmentMeter(int x, int y, int width, int height, int digits, int decimals) | Dieser Konstruktor erzeugt ein neues SevenSegmentMeter mit den angebenen Koordinaten und Maßen. Der Parameter digits gibt die gewünschte Anzahl Dezimalstellen an. decimals gibt die Anzahl der Nachkommastellen an, die in digits enthalten sind (an entsprechender Stelle wird ein Komma eingefügt). |
setValue(int value) | Übergibt einen neuen Messwert an das SevenSegmentMeter , bzw. DigitalMeter , welches daraufhin aktualisiert wird. |
Der in Bild 2 dargestellte Screenshot zeigt das im Folgenden abgedruckte Beispielprogramm VoleDigitalMeterExample
, welches ein DigitalMeter
und ein SevenSegmentMeter
instantiiert und auf dem Display darstellt.
1 | import java.io.IOException; |
2 | |
3 | import jcontrol.io.Resource; |
4 | import jcontrol.lang.Math; |
5 | import jcontrol.lang.ThreadExt; |
6 | import jcontrol.ui.vole.Border; |
7 | import jcontrol.ui.vole.Frame; |
8 | import jcontrol.ui.vole.meter.DigitalMeter; |
9 | import jcontrol.ui.vole.meter.SevenSegmentMeter; |
10 | |
11 | /** |
12 | * <p>This example demonstrates how to use the |
13 | * component DigitalMeter within the GUI framework |
14 | * JControl/Vole. |
15 | * This example needs the font resource |
16 | * "arial24.jcfd".</p> |
17 | * |
18 | * <p>(C) DOMOLOGIC Home Automation GmbH 2003-2005</p> |
19 | */ |
20 | public class VoleDigitalMeterExample extends Frame { |
21 | |
22 | public VoleDigitalMeterExample() { |
23 | // create the DigitalMeter |
24 | DigitalMeter dm = new DigitalMeter(13, 20, 3, 1); |
25 | |
26 | // set the Font of the DigitalMeter |
27 | try { |
28 | dm.setFont(new Resource("arial24.jcfd")); |
29 | } catch (IOException e) {} |
30 | |
31 | // add the DigitalMeter to the Frame |
32 | this.add(dm); |
33 | |
34 | // create the LCDMeter |
35 | SevenSegmentMeter sm = new SevenSegmentMeter(70, 10, 50, |
36 | 50, 2, 0); |
37 | this.add(sm); |
38 | |
39 | // make some pretty borders |
40 | this.add(new Border("DigitalMeter", 0, 0, 63, 60)); |
41 | this.add(new Border("SevenSegment", 64, 0, 63, 60)); |
42 | |
43 | // make the frame visible |
44 | show(); |
45 | |
46 | |
47 | // produce some random values |
48 | for (;;) { |
49 | dm.setValue(Math.rnd(2000)-1000); |
50 | sm.setValue(Math.rnd(150)-50); |
51 | try{ ThreadExt.sleep(1000); }catch(InterruptedException e){} |
52 | } |
53 | } |
54 | |
55 | // start the demonstration |
56 | public static void main(String[] args) { |
57 | new VoleDigitalMeterExample(); |
58 | } |
59 | } |