Small Basic: La Saisie Clavier (fr-FR)
Cet article concerne la gestion de la saisie au clavier dans Microsoft Small Basic.
Fenêtre Graphique
Dans la fenêtre graphique, il y a trois méthodes pour gérer la saisie clavier.
- Les contrôles de saisie de texte
- Les événements de saisie de texte
- Les événements d'appui et de relâchement des touches clavier
Les Contrôles de Saisie de Texte
Chaque Controls.AddTextBox() et Controls.AddMultiLineTextBox() ajoute une zone de saisie de texte dans la fenêtre graphique. Dans une zone de saisie de texte, vous pouvez entrer du texte au clavier et avec Controls.GetTextBoxText() vous pouvez récupérer la valeur qui a été saisie. Pouvez également définir vous brancher sur l'évènement Controls.TextTyped.
L'Evénement TextInput
La sous-routine de gestion de l'événement TextInput est appelée lorsqu'une touche est appuyée. Et vous pouvez récupérer le texte saisie depuis la propriété GraphicsWindow.LastText.
Les Evénements KeyDown et KeyUp
Vous pouvez définir l'événement pour récupérer les touches qui sont appuyées avec GraphicsWindow.KeyDown, et récupérer les touches qui sont relâchées avec GraphicsWindow.KeyUp. Voici un code d'exemple.
GraphicsWindow.DrawText(10 , 10, "Appuyer sur une touche pour l'afficher.")
GraphicsWindow. KeyDown = OnKeyDown
Sub OnKeyDown
TextWindow.WriteLine(GraphicsWindow.LastKey)
EndSub
Cette table affiche les valeurs pour GraphicsWindow.LastKey .
Key top E | Key top J | LastKey | Commentaires |
A-Z | A-Z | A-Z | |
/ | \ | AbntC1 | Brazil key, IME=ENG |
+ | + | Add | numeric keypad |
Apps | |||
← | Back Space | Back | |
Break | Break | Cancel | Ctrl+Pause |
Caps Lock | Caps Lock | Capital | |
5 | 5 | Clear | !NumLock |
. | . | Decimal | NumLock |
Delete | Delete | Delete | |
/ | / | Divide | numeric keypad |
↓ | ↓ | Down | |
End | End | End | |
Esc | Esc | Escape | |
F1-F9 | F1-F9 | F1-F9 | |
F11-F12 | F11-F12 | F11-F12 | |
0-9 | 0-9 | D0-D9 | |
Home | Home | Home | |
N/A | 無変換 | ImeNonConvert | non convert |
Insert | Insert | Insert | |
← | ← | Left | |
Ctrl | Ctrl | LeftCtrl | left control |
⇧ | ⇧Shift | LeftShift | |
N/A | LWin | display | |
LWin | left Window | ||
* | * | Multiply | numeric keypad |
Page Down | PgDn | Next | |
Num Lock | Num Lk | NumLock | |
0-9 | 0-9 | NumPad0-NumPad9 | NumLock |
; | + | Oem1 | IME=ENG |
' | : | Oem1 | IME=J |
` | 半角/全角 | Oem3 | IME=ENG |
[ | @ | Oem3 | IME=J |
\ | ] | Oem5 | IME=ENG |
N/A | ¥ | Oem5 | IME=J |
] | [ | Oem6 | IME=ENG |
\ | ] | Oem6 | IME=J |
/ | \ | OemBackslash | IME=J |
, | , | OemComma | |
- | - | OemMinus | |
[ | @ | OemOpenBrackets | IME=ENG |
] | [ | OemOpenBrackets | IME=J |
. | . | OemPeriod | |
= | ^ | OemPlus | IME=ENG |
; | + | OemPlus | IME=J |
/ | / | OemQuestion | |
' | : | OemQuotes | IME=ENG |
= | ^ | OemQuotes | IME=J |
Page Up | PgUp | PageUp | |
Pause | Pause | Pause | |
Enter | Enter | Return | |
→ | → | Right | |
Ctrl | Ctrl | RightCtrl | right control |
⇧ | ⇧Shift | RightShift | |
RWin | right Windows | ||
- | - | Subtract | numeric keypad |
Scroll Lock | Scr Lk | Scroll | scroll lock |
(Space) | (Space) | Space | |
Alt | Alt | System | |
F10 | F10 | System | |
Tab | Tab | Tab | |
↑ | ↑ | Up | |
▼ | ▼ | VolumeDown | |
╳ | ╳ | VolumeMute | |
▲ | ▲ | VolumeUp | |
Print Scrn | Prt Sc | N/A | print screen |
N/A | ¥ | N/A | IME=ENG |
` | 半角/全角 | N/A | IME=J |
N/A | ひらがな | N/A | hiragana |
N/A | 変換 | N/A | convert |
Focus de Saisie
Le Focus de Saisie est l'endroit (le contrôle) qui recoit tout ce que saisi l'utilisateur au clavier. Le focus de saisie peut être modifié avec la touche [Tab] ou un clic souris est avec généralement un effet de couleur pour montrer le contrôle en cours. Vous pouvez déterminer quel contrôle possède actuellement le focus avec le programme d'exemple suivant.
A noter que si le focus est sur une zone de texte, l'événement TextInput n'a jamais lieu. Si the focus n'est sur aucune zone de texte, l'événement TextInput aura lieu.
Programme d'Exemple
- Key Input Test (GRM149) - regarder en particulier les évènements GraphicsWindow.KeyUp, GraphicsWindow.KeyDown, GraphicsWindow.TextInput, et Controls.TextTyped.
Problèmes Connus
Lorsque le programme publié s'exécute dans un navigateur (en distant), les problèmes suivants apparaîtront.
- Les focus de saisie avec les évènements GraphicsWindow.KeyDown et GraphicsWindow.KeyUp peuvent être perdus lorsqu'il y a un contrôle de zone texte en local. D'autre part le focus peut être cyclique au travers de tous les contrôles mais également la fenêtre graphique elle-même en appuyant sur la touche [Tab] en distant.
- GraphicsWindow.LastKey devient "LeftShift" ou "RightShift" pour la touche [Maj] en local mais "Shift" en distant.
- GraphicsWindow.LastText retourne le même nom de touche que GraphicsWindow.LastKey en distant.
Fenêtre Texte
Pour la fenêtre texte, TextWindow.Read() et TextWindow.ReadNum() sont utilisés pour la saisie au clavier.
Opérations Read et ReadNum
TextWindow.Read() permet la saisie des textes et TextWindow.ReadNum() la saisie des nombres depuis le clavier.
Opération ReadKey est Obsolète
TextWindow.ReadKey() est une ancienne opération. Mais elle fonctionne toujours pour des raisons de rétro-compatibilité.
Voir Aussi
Autres Ressources
- Enumération des Touches Clavier (.NET Framework 4.5)
Autres Langues
- Article Original : Small Basic: Key Input (en-US)