Keyboard / Tastatur #K

Befehlsgruppe um ein Keyboard für Tastureingaben darzustellen. Das Modul muss mit einem Touch ausgerüstet sein (Bestellnummern: EA uniTFTxxx-ATC oder EA uniTFTxxx-ATP). Im Normalfall wird das Keyboard mit einer EditBox verbunden.

Layout des Keyboards definieren

(Keyboard Define Buttons)

#KDB

Obj-ID, Layout-Nr., "ButtonStringLine1"; ...; "ButtonStringLineN"

Definition alternativer Tastenbeschriftung/Styles

(Keyboard Define Styles)

#KDS

Obj-ID, Code, ButtonStyle, "Label"; Code1, ButtonStyle1, "Label1" ...; CodeN, ButtonStyleN, "LabelN";

Keyboard platzieren und anzeigen

(Keyboard Place)

#KKP

Obj-ID, ButtonStyleNormal, ButtonStyleSpecial, x, y, Anker, Tastenabstand, Gesamtbreite, Gesamthöhe(0), Erscheinen(0)


...

#KDB 1,1,"ASDF";"\NYXCV";"\O\O  ";

#KDS 1,24,3,"Alt";

#KKP 1,1,1,20,20,7,5,300

...


Layout des Keyboards definieren

#KDB

Obj-ID, Layout-Nr., "ButtonStringLine1"; ...; "ButtonStringLineN"

Ein Keyboard kann bis zu 4 unterschiedliche Layouts (Layout-Nr.) haben. Jedem Layout können Tasten(Codes) zugeordnet werden. Mehrere Zeilen werden durch Stringende ';' gekennzeichnet

Tasten können als String (z.B. "ASDF") oder als ASCII/ Unicode (z.B. $41 $53 $44 $56) übergeben werden. Für spezielle Tasten stehen folgende Keycodes zur Verfügung:

Code

Code im String

Beschreibung

1

\1

Anzeigen von Keyboard  Layout-Nr. 1

2

\2

Anzeigen von Keyboard  Layout-Nr. 2

3

\3

Anzeigen von Keyboard  Layout-Nr. 3

4

\4

Anzeigen von Keyboard  Layout-Nr. 4

5

\5

SHIFT (Verwende für einen Tastendruck das Keyboard Layout-Nr. 2, dann automatisch wieder Keyboard Layout-Nr. 1)

6

\6

CAPSLOG (Umschalten zwischen  Keyboard Layout-Nr. 1, dann automatisch wieder Keyboard Layout-Nr. 2)

7

\7

DELETE

8

\8

BACKSPACE

9

\9

Reserviert für zukünftige Verwendung

10

\A

Reserviert für zukünftige Verwendung

11

\B

INSERT/ OVERWRITE

12

\C

CLEAR

13

\D

SEND

14

\E

Cursor left

15

\F

Cursor right

16

\G

Reserviert für zukünftige Verwendung

17

\H

Reserviert für zukünftige Verwendung

18

\I

POS1

19

\J

END

20

\K

Reserviert für zukünftige Verwendung

21

\L

CANCEL

22

\M

Cursor On/Off

23

\N

Platzhalter (Dieser Keycode wird nicht gezeichnet)

24 - 31

\O - \V

8 Funktionstasten


Definition alternativer Tastenbeschriftung/Styles

#KDS

Obj-ID, Code, ButtonStyle, "Label"; Code1, ButtonStyle1, "Label1" ...; CodeN, ButtonStyleN, "LabelN";

Einem bestimmten Keycode (Code) wird eine spezielle Tastenbeschriftung ("Label") und ButtonStyle zuweisen. Diese Einstellung überschreibt die Styledefinition des Befehls #KKP. Die ButtonStyles werden nicht komplett übernommen, so wird die Größenangabe aus dem ButtonStyle ignoriert, der Radius wird einmalig übernommen. Ändert sich der Radius im ButtonStyle im Nachhinein wird dieser Werte nicht im Keyboard übernommen, eine Farbänderung oder TextStyleänderung hingegen schon.


Keyboard platzieren und anzeigen

#KKP

Obj-ID, ButtonStyleNormal, ButtonStyleSpecial, x, y, Anker, Tastenabstand, Gesamtbreite, Gesamthöhe(0), Erscheinen(0)

Das mit den Befehlen #KDB und #KDS definierte Keyboard wird an die Stelle x, y mit dem gegebenen Anker platziert. Die Breite einer Taste errechnet sich automatisch aus der Gesamtbreite bzw. der Gesamthöhe und den Abständen zwischen den Tasten (Tastenabstand). Ist die Gesamthöhe, oder Gesamtbreite =0 wird diese Länge automatisch aus der resultierenden Tastengröße berechnet. Die Größenwerte sind die gewünschten Maximalwerte. Die Tasten werden gleichmäßig aufgeteilt. Der ButtonStyleNormal definiert den Style für Buchstaben und Ziffern, ButtonStyleSpecial gilt für Sondertasten. Der letzte Parameter (Erscheinen) gibt an ob das Keyboard sofort angezeigt wird oder gemäß einer definierten Animation (#AOA / #AOR) erscheint:

Erscheinen

0

Keyboard wird sofort angezeigt

>=1 (Time)

Keyboard erscheint gemäß Animation in der definierten Zeit (in 1/100s)