FMX.ListBox.TCustomComboBox.KeyDown

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

procedure KeyDown(var Key: Word; var KeyChar: System.WideChar; Shift: TShiftState); override;

C++

virtual void __fastcall KeyDown(System::Word &Key, System::WideChar &KeyChar, System::Classes::TShiftState Shift);

Propriétés

Type Visibilité  Source Unité  Parent
procedure
function
protected
FMX.ListBox.pas
FMX.ListBox.hpp
FMX.ListBox TCustomComboBox

Description

Fournit une réponse quand une touche est enfoncée alors que le contrôle détient la focalisation du clavier.

FMX.ListBox.TCustomComboBox.KeyDown hérite de FMX.Controls.TControl.KeyDown. Tout le contenu en-dessous de cette ligne se réfère à FMX.Controls.TControl.KeyDown.

Fournit une réponse quand une touche est enfoncée alors que le contrôle détient la focalisation du clavier.

Si la touche enfoncée est la touche Applications (Key = vkApps), alors KeyDown affiche le menu contextuel du contrôle. Sinon, KeyDown appelle le gestionnaire d'événement OnKeyDown s'il est affecté.

TCommonCustomForm et les classes descendantes de TControl comme TCustomGrid appellent KeyDown à partir de leurs méthodes de gestion de l'appui sur les touches. Ils décodent les paramètres du message en code de touche, code de caractère et état Shift du clavier. Ils les transmettent dans les paramètres Key, KeyChar et Shift de la méthode KeyDown.

Paramètres Descriptions

Key

Est le code de balayage d'une touche de clavier enfoncée ou $0. Si une combinaison de touches enfoncées correspond à un raccourci, Key <> 0 est une touche virtuelle et KeyChar = #0. Les codes de balayage physiques d'une même touche diffèrent selon les plates-formes (Windows ou iOS). Les unités spécifiques à la plate-forme (comme FMX.Platform.Mac.pas, par exemple) devraient traduire les codes de balayage natifs en code Windows correspondants définis dans l'unité UITypes. Par exemple,

vkReturn = $0D; { 13 } correspond à la touche de clavier RETOUR.
vkF2 = $71; { 113 } correspond à la touche de clavier F2.

KeyChar

Est le caractère clavier enfoncé (chiffre) ou #0. Lorsqu'une combinaison de touches enfoncées peut être traitée comme un chiffre ou un caractère imprimable, la valeur de Key = 0, et KeyChar contient un symbole enfoncé selon la langue d'entrée du clavier en cours, le mode du clavier (touches Verr Maj et Verr Num), l'état Shift du clavier, et l'état IME. Les éditeurs peuvent utiliser ce symbole pour l'ajouter dans un texte en cours d'édition.

Shift

Indique quelles touches mortes -- MAJ, CTRL, ALT et CMD (uniquement sur le Mac) -- étaient appuyées quand la touche spécifiée a été enfoncée, avec le contrôle détenant la focalisation.

Si le contrôle a traité avec succès la combinaison de touches enfoncées et qu'aucun autre traitement n'est requis, KeyDown assigne Key = 0 et KeyChar = #0.

Redéfinissez la méthode protégée KeyDown pour fournir d'autres réponses quand une touche est enfoncée alors que le contrôle détient la focalisation d'entrée au clavier.

Voir TCommonCustomForm.KeyDown pour plus d'informations sur les paramètres.

Avertissement: Lorsque vous utilisez un clavier virtuel (à l'écran) sur des périphériques Android, ne vous fiez pas aux événements de touche pour détecter les touches enfoncées, en particulier pour les caractères texte. Cependant, les événements de touche détectent des touches telles que Retour et Entrée mais ne les suppriment pas, en fonction de l'application cible. Sachez que d'autres méthodes d'entrée logicielles peuvent ne jamais envoyer d'événements de touche, quelle que soit la version.

Voir aussi