Table des Matières du Clavier | Index du Clavier |
La table de touches enregistre les valeurs de caractère en utilisant l'encodage UTF-8 du Standard Unicode, permettant de transformer des touches en caractères dans tous les scripts du monde. UTF-8 encode des valeurs Unicode 16-bits en un nombre variable d'octets (de un à quatre). Le bénéfice principal pour utiliser UTF-8 est que des caractères UTF sur un unique octets de $00 à $7F sont identiques au standard ASCII qui existe depuis des décennies.
Un message B_KEY_DOWN contient le caractère transformé en la touche que l'utilisateur à pressée sous forme d'un tableau d'octets appelé simplement "octet". Le tableau et passé sous forme de chaîne à la fonction crochée (hook) KeyDown() accompagnée du nombre d'octets contenus dans la chaîne:
Voir "Encodage d'un Caractère " dans la section "Réponse à l'Utilisateur " du kit d'interface pour une description de l'encodage UTF-8 et get_key_map() pour une explication de la transformation de caractère.
La plupart des touches sont transformées en plus d'un caractère. Le caractère précis que la touche produit dépend des touches modificatrices qui sont maintenues pressées et des états de vérouillage dans lequel se trouve le clavier au moment où la touche est enfoncée.
Quelques exemples sont donnés dans le tableau si dessous :
Touche | Pas de modificateurs | Shift tout seul | Option tout seul | Shift & Option | Control(Ctrl) |
---|---|---|---|---|---|
0x15 | 4 | $ | 4 | ||
0x18 | 7 | & | xa6 | xa4 | 7 |
0x26 | B_TAB | B_TAB | B_TAB | B_TAB | B_TAB |
0x2e | i | I | B_TAB | ||
0x40 | g | G | " | 0x07 | |
0x43 | k | K | B_PAGE_UP | ||
0x51 | n | N | ñ | Ñ | 0x0e |
0x55 | / | ? | xb8 | xc0 | / |
0x64 | B_INSERT | 0 | B_INSERT | 0 | B_INSERT |
La transformation suit des règles précises, incluant celles-ci :
La transformation de touche par défaut suit aussi les règles conventionnelles pour Caps Lock et Contrôle (Ctrl):
Cependant, si le verrouillage n'affecte pas le caractère, Shift plus le verrouillage est le même que Shift seul. Par exemple, Caps Lock-7 produit '7' (le verrouillage est ignoré) et Shift7 produit '&' (Shift à un effet ), ainsi Shift-Caps Lock-7 produit aussi '&' (Shift seulement à un effet ).
Quand Contrôle (Ctrl) est utilisée avec une touche qui ne produit pas un caractère alphabétique, le caractère qui est renvoyé est le même que si aucun modificateur n'avait été activé. Par exemple, Ctrl7 produit un '7'.
Table des Matières du Clavier | Index du Clavier |
Copyright © 2000 Be, Inc. All rights reserved..