Eingabefeld

| ALPHA-VISION® DCS

## Eingabefeld

### Eigenschaften

In Klammern sind die Namen der Eigenschaften angegeben, die in Refresh- und Aktions-Skripts sowie den XML-Dateiene verwendet werden.

Name (`Name`)
Aktion (`OnAction`)
  Aktion, die bei Abschluß der Eingabe mit der [ENTER]-Taste ausgeführt wird.
Stil (`Style`)
  Der Stil des Eingabefeldes entspricht den im Windows-Standard vorhandenen Möglichkeiten. Die Beschreibung wurde der Originaldokumentation entnommen. Deutsche Fassung folgt noch.

  Stil | Eintrag in XML | Beschreibung (engl.)
  --- | --- | ---
  Autom. Horiz. Scroll | ES_AUTOHSCROLL | Automatically scrolls text to the right by 10 characters when the user types a character at the end of the line. When the user presses the ENTER key, the control scrolls all text back to position 0.
  Autom. vert. Scroll | ES_AUTOVSCROLL | Automatically scrolls text up one page when the user presses ENTER on the last line.
  Zentriert | ES_CENTER | Centers text in a single-line or multiline edit control.
  Linksbündig | ES_LEFT | Left-aligns text in a single-line or multiline edit control.
  Nur Kleinbuchstaben | ES_LOWERCASE | Converts all characters to lowercase as they are typed into the edit control.
  Mehrzeilig | ES_MULTILINE | Designates a multiple-line edit control. (The default is single line.) If the ES_AUTOVSCROLL style is specified, the edit control shows as many lines as possible and scrolls vertically when the user presses the ENTER key. If ES_AUTOVSCROLL is not given, the edit control shows as many lines as possible and beeps if ENTER is pressed when no more lines can be displayed. If the ES_AUTOHSCROLL style is specified, the multiple-line edit control automatically scrolls horizontally when the caret goes past the right edge of the control. To start a new line, the user must press ENTER. If ES_AUTOHSCROLL is not given, the control automatically wraps words to the beginning of the next line when necessary; a new line is also started if ENTER is pressed. The position of the wordwrap is determined by the window size. If the window size changes, the wordwrap position changes and the text is redisplayed. Multiple-line edit controls can have scroll bars. An edit control with scroll bars processes its own scroll-bar messages. Edit controls without scroll bars scroll as described above and process any scroll messages sent by the parent window.
  Sel. immer anzeigen | ES_NOHIDESEL | Normally, an edit control hides the selection when the control loses the input focus and inverts the selection when the control receives the input focus. Specifying ES_NOHIDESEL deletes this default action.
  Paßwort | ES_PASSWORD | Displays all characters as an asterisk (*) as they are typed into the edit control. An application can use the SetPasswordChar member function to change the character that is displayed.
  Rechtsbündig | ES_RIGHT | Right-aligns text in a single-line or multiline edit control.
  Nur Großbuchstaben | ES_UPPERCASE | Converts all characters to uppercase as they are typed into the edit control.
  Nur Anzeige | ES_READONLY | Prevents the user from entering or editing text in the edit control.

## Anbindung

### `Text`

#### Beispiel:

Refresh-Script:

    SetVal(Text, OBJ.MyObject.Value);

Aktion:

    SetVal(OBJ.MyObject.Value, Text);

Die Eigenschaft `Text` enthält den darzustellenden bzw. den vom Endanwender eingegebenen Text. Mit SetVal() wird ihr die Eigenschaft `Value` des Datenobjekts MyObject zugewiesen. Dabei werden Zahlen und Zeiten automatisch in eine Default-Stringdarstellung konvertiert. Wenn dieser default nicht ausreicht, dann muß eine der Konvertierungs-Funktionen benutzt werden.

Die Aktion wird mit der [Enter]-Taste ausgelöst. Sie enthält einfach die Umkehrung des Refresh-Scripts. Auch hier werden Default-Konvertierungen vorgenommen, die aber in den meisten Fällen ausreichen sollten. Die einzige Ausnahme sind Zeiten.

#### Beispiel:

Refresh-Script:

    CnvrtTime2Str("DD.MM.YYYY hh:mm:ss", OBJ.MyObject.Time);
    //Der formatierte String befindet sich jetzt auf dem Stack
    SetVal(Text, ); //das leere Argument übernimmt den Wert vom Stack

Aktion:

    CnvrtStr2Time("DD.MM.YYYY hh:mm:ss", Text);
    //Der Zeit-Wert befindet sich jetzt auf dem Stack
    SetVal(OBJ.MyObject.Time, ); //das leere Argument übernimmt den Wert vom Stack