Methode | Beschreibung |
BarMeter(int x, int y, int width, int height, int min, int max, boolean orientation, int style) | Erzeugt ein neues BarMeter mit den angegebenen Ausmaßen. Die Werte min und max beschreiben den Wertebereich der Messwertanzeige. Der Wert von style legt den Füllstil fest. Mit Hilfe des Parameters orientation kann konfiguriert werden, ob das BarMeter liegend (ORIENTATION_HORIZONTAL ) oder stehend (ORIENTATION_VERTICAL ) dargestellt werden soll. |
setCaption(String captionMin, String captionMax) | Gibt Strings zur Beschriftung des BarMeters an. |
setNumericDisplay(int digits, int decimals, String unit) | Mittels dieser Methode kann die alphanumerische Messwertanzeige konfiguriert werden. Der Parameter digits definiert die Anzahl der anzuzeigenden Stellen. Der Parameter decimals bestimmt, wieviele Nachkommanstellen angezeigt werden sollen (diese sind im Wert von digits enthalten). Beispiel: digits=4 und decimals=3 ergibt die Zahlendarstellung: x,xxx . Im Fall decimals=0 wird kein Komma eingefügt. Der String unit schließlich gibt die Einheit der Messwerte an (z.B. "V"). |
setValue(int value) | Übergibt einen neuen Messwert an das BarMeter , welches daraufhin aktualisiert wird. Liegt der Wert von value außerhalb des Wertebereichs, so wird er entsprechend durch den minimal, bzw. maximal anzeigbaren Wert ersetzt. |
1 | import jcontrol.lang.Math; |
2 | import jcontrol.lang.ThreadExt; |
3 | import jcontrol.ui.vole.Frame; |
4 | import jcontrol.ui.vole.meter.BarMeter; |
5 | |
6 | /** |
7 | * <p>This example demonstrates how to use the |
8 | * components BarMeter and Thermometer within |
9 | * the GUI framework JControl/Vole.</p> |
10 | * |
11 | * <p>(C) DOMOLOGIC Home Automation GmbH 2003-2005</p> |
12 | */ |
13 | public class VoleBarMeterExample extends Frame { |
14 | |
15 | /** |
16 | * Draw two BarMeters and a Thermometer |
17 | */ |
18 | public VoleBarMeterExample() { |
19 | // create a vertical BarMeter with solid fill and inscriptions |
20 | BarMeter bm1 = new BarMeter(5, 0, 30, 35, 0, 20, |
21 | BarMeter.ORIENTATION_VERTICAL, |
22 | BarMeter.FILL_SOLID); |
23 | bm1.setCaption("Min", "Max"); |
24 | this.add(bm1); |
25 | |
26 | // create a horizontal BarMeter with line-style fill |
27 | BarMeter bm2 = new BarMeter(5, 40, 100, 20, 0, 100, |
28 | BarMeter.ORIENTATION_HORIZONTAL, |
29 | BarMeter.FILL_LINE); |
30 | bm2.setCaption("0", "20"); |
31 | bm2.setNumericDisplay(5, 0, "%"); |
32 | this.add(bm2); |
33 | |
34 | // make the frame visible |
35 | show(); |
36 | |
37 | // generate random values |
38 | for (;;) { |
39 | bm1.setValue(Math.rnd(20)); |
40 | bm2.setValue(Math.rnd(100)); |
41 | |
42 | try { ThreadExt.sleep(1000); } catch (InterruptedException e) {} |
43 | } |
44 | } |
45 | |
46 | /** |
47 | * Start the example |
48 | */ |
49 | public static void main(String[] args) { |
50 | new VoleBarMeterExample(); |
51 | } |
52 | } |