32 progressbar
Das progressbar-Objekt ermöglicht es den Verlauf einer länger andauernden Aktion visuell darzustellen. Hierzu wird eine Art Balken angezeigt, dessen Länge dem Fortschritt der Aktion angepasst wird. Dadurch kann der Anwender abschätzen, wie weit die Aktion fortgeschritten ist und wie lange sie noch dauern wird.
Definition
{ export | reexport } { model } progressbar { <Bezeichner> }
{
<Standardattribute>
<Allgemeine Attribute>
<Geometrieattribute>
<Hierarchieattribute>
<Layoutattribute>
<Objektspezifische Attribute>
}
Ereignisse
Kinder
Vater
Menü
32.1 Attribute
32.2 Spezifische Attribute
| Attribut | Beschreibung |
|---|---|
|
Gibt die Position des Fortschrittsbalkens an. Siehe auch Kapitel „Berechnung des Fortschrittsbalkens“. |
|
|
Definiert den Stil, also Darstellung und Ausprägung, des Rahmens (ab IDM-Version A.06.01.a). Attribut wird unterstützt, jedoch nur border_none und border_toolkit zulässig. border_plain, border_raised und border_sunken werden als border_toolkit umgesetzt. |
|
|
Rahmenbreite des Objekts. Unter Microsoft Windows wird ein Standardrahmen gezeichnet, wenn der Wert des Attributs größer 0 ist. Es kann also lediglich bestimmt werden, ob ein Rahmen da ist oder nicht. Die Breite kann nicht beeinflusst werden. |
|
|
Ausrichtung der Progressbar. 1 bedeutet vertikale Ausrichtung, der Balken läuft von unten nach oben 2 bedeutet horizontale Ausrichtung, der Balken läuft von links nach rechts |
|
|
Maximalwert des Progress-Bereiches. Siehe auch Kapitel „Berechnung des Fortschrittsbalkens“. |
|
|
Minimalwert des Progress-Bereiches. Siehe auch Kapitel „Berechnung des Fortschrittsbalkens“. |
|
|
Optionen des Objekts. Index: opt_center_toolhelp (nur MS Windows). |
|
|
Aussehen des Fortschrittbalkens. Indizes: style_continuous – Darstellung kontinuierlich (true) oder in Blöcken (false). style_labeled – Beschriftung (true) oder nicht, nur bei horizontaler Ausrichtung. |
|
|
Farbe der Beschriftung (soweit vom System unterstützt), bei null wird der Defaultwert des jeweiligen Systems genommen. |
32.2.1 Berechnung des Fortschrittsbalkens
Das Attribut .curvalue gibt die Position des Fortschrittsbalken an. Außerdem wird aus diesem Wert die Prozentangabe berechnet, die als optionale Beschriftung angezeigt wird. Bei einem Wert gleich .minvalue ist kein Balken sichtbar, die Prozentangabe ist 0%. Bei einem Wert gleich .maxvalue dagegen ist der gesamte Balken sichtbar und die Prozentangabe ist 100%. Die Werte dazwischen werden entsprechend umgerechnet. Der Balken läuft immer von links nach rechts bzw. von unten nach oben, egal ob .minvalue größer oder kleiner als .maxvalue ist.
32.3 Anmerkung zur Progressbar unter Microsoft Windows
Anmerkung für aktive Visual Styles
:
Die Farbgebung der Visual Styles
lässt sich nicht einer gesetzten Farbe anpassen. Um unschöne Farbkombinationen zu vermeiden wird empfohlen, soweit als möglich auf eine Farbsetzung verzichten.
Insbesondere Abgeraten wird vor der Verwendung von .fgc am progressbar Objekt (es erfolgt ansonsten die Darstellung des Fortschrittbalkens mit einem breiten, von den Visual Styles
stammenden Rahmen).
32.4 Beispiel
dialog D {}
...
import M1 "m1.if" { .load false; }
import M2 "m2.if" { .load false; }
import M3 "m3.if" { .load false; }
import M4 "m4.if" { .load false; }
import M5 "m5.if" { .load false; }
import M6 "m6.if" { .load false; }
import M7 "m7.if" { .load false; }
import M8 "m8.if" { .load false; }
import M9 "m9.if" { .load false; }
import M10 "m10.if" { .load false; }
...
window WnModLoad
{
.title "Module werden geladen ...";
.width 300;
.height 100;
.dialogbox true;
.sizeable false;
.closeable false;
.iconifyable false;
.borderwidth 1;
progressbar PrModLoad
{
.xauto 0;
.yauto 0;
.xleft 5;
.xright 5;
.ytop 10;
.ybottom 10;
.style[style_continous] false;
.minvalue 0;
.maxvalue 10;
.curvalue 0;
}
}
...
on dialog start
{
M1.load := true;
PrModLoad.curvalue := 1;
M2.load := true;
PrModLoad.curvalue := 2;
M3.load := true;
PrModLoad.curvalue := 3;
M4.load := true;
PrModLoad.curvalue := 4;
M5.load := true;
PrModLoad.curvalue := 5;
M6.load := true;
PrModLoad.curvalue := 6;
M7.load := true;
PrModLoad.curvalue := 7;
M8.load := true;
PrModLoad.curvalue := 8;
M9.load := true;
PrModLoad.curvalue := 9;
M10.load := true;
PrModLoad.curvalue := 10;
WnModLoad.visible := false;
...
}