39 spinbox
Eine spinbox ist ein Containerobjekt, das aus zwei Pfeiltasten besteht und genau ein Kindobjekt enthält, bei dem es sich um einen einzeiligen edittext oder statictext handeln muss, der zur Anzeige des momentan eingestellten Wertes dient. Bei einer Wertänderung der spinbox – die entweder durch Betätigung einer Pfeiltaste oder durch eine Wertzuweisung erfolgt – wird der Inhalt des Anzeigefeldes automatisch aktualisiert.
Definition
{ export | reexport } { model } spinbox { <Bezeichner> } { <Standardattribute> <Allgemeine Attribute> <Geometrieattribute> <Hierarchieattribute> <Layoutattribute> <Textattribute> <Objektspezifische Attribute> }
Ereignisse
Kinder
1 edittext oder 1 statictext
Vater
Menü
Methoden
39.1 Attribute
39.2 Spezifische Attribute
Attribut | Beschreibung |
---|---|
Index des aktuell angezeigten Textes (nur bei .style = string). | |
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. |
|
Gibt den momentan angezeigten Wert an (nur bei .style <> string). |
|
Bestimmt den Differenzwert, um den .curvalue pro Schritt erhöht bzw. erniedrigt werden soll (nur bei .style <> string). |
|
Ausrichtung der Spinbox-Buttons. 1 – Vertikale Ausrichtung (default). 2 – Horizontale Ausrichtung. |
|
Anzahl der Einträge des Objekts (nur bei .style = string). |
|
Maximal angezeigter Wert (nur bei .style <> string). |
|
Minimal angezeigter Wert (nur bei .style <> string). |
|
Optionen des Objekts. Indizes: opt_center_toolhelp (nur MS Windows). |
|
Definiert, was in der Spinbox angezeigt werden soll. integer – Integerwerte (default). string – Texte. void – anwendungsgesteuertes Spinning. |
|
Definiert die einzelnen anzuzeigenden Texte des Objekts. (nur bei .style = string) Bitte beachten Sie auch das Kapitel „Wertsetzung an der Spinbox“. |
|
Definiert das Hintergrundbild des Objekts |
|
Gibt die Art und Weise an, wie das in tile definierte Hintergrundbild dargestellt wird. |
|
Steuert, ob ein zirkuläres Spinning erfolgt (Default) oder beim Erreichen der Unter- bzw. der Obergrenze das Spinning abgebrochen wird. |
39.2.1 Wertsetzung an der Spinbox
Die Spinbox bestimmt selbst den Wert der Attribute .content bzw. .text am Kindobjekt. Aus diesem Grund sollten diese Attribute nicht am Kindobjekt geändert werden. Stattdessen sollten immer .activeitem und .text (.style = string) bzw. .curvalue (.style = integer) an der Spinbox gesetzt werden.
Insbesondere ist es zu vermeiden, .content bzw. .text des Kindobjekts auf einen inkonsistenten Wert zu setzen, da hier der angezeigte Text zufällig sein kann.
Achtung
Das Ändern von .activeitem und .text bzw. .curvalue an der Spinbox ändert immer auch .content bzw. .text am Kindobjekt! Deshalb ist es unter allen Umständen zu vermeiden diese Attribute zu ändern, während der Anwender den Text bearbeitet (Kindobjekt besitzt den Focus). Während dieser Textänderung durch den Anwender ist auch die einzige Situation gegeben, in der eine direkte Setzung von .content/.text am Kindobjekt sinnvoll sein kann.
39.3 Anmerkungen für Dialog Manager mit Microsoft Windows
Zur Benutzung einer Radmaus zum Scrollen bitte Kapitel „Radmaus bzw. Radmausunterstützung unter Microsoft Windows“ beachten.
39.4 Beispiel
dialog Spinbox
{
}
color White "WHITE", grey(0);
window Wn
{
.xleft 73;
.width 260;
.ytop 29;
.height 222;
.title "Testfenster";
child spinbox Sp1
{
.xleft 62;
.ytop 64;
.curvalue 1;
child edittext
{
.xauto 0;
.xleft 0;
.xright 0;
.yauto 0;
.ytop 0;
.ybottom 0;
}
}
child spinbox Sp2
{
.xleft 62;
.width 100;
.ytop 113;
.style string;
.maxvalue 7;
.text[1] "Montag";
.text[2] "Dienstag";
.text[3] "Mittwoch";
.text[4] "Donnerstag";
.text[5] "Freitag";
.text[6] "Samstag";
.text[7] "Sonntag";
.activeitem 1;
child edittext Et2
{
.xauto 0;
.xleft 0;
.xright 0;
.yauto 0;
.ytop 0;
.ybottom 0;
}
}
}