KeyboardShortcut contrôle
Un contrôle utilisé pour capturer et agir sur les événements du clavier.
Note
La documentation complète et le code source sont accessibles dans le Référentiel de composants de code GitHub.
Description
Ce composant de code enregistre les gestionnaires d’événements keypress pour permettre l’utilisation de raccourcis clavier dans les applications canevas ou les pages personnalisées. Il n’est pas destiné à être utilisé dans des applications pilotées par modèle ou de portail.
Propriétés
Property | Description |
---|---|
KeyConfig |
Un tableau de chaînes indiquant les raccourcis clavier à écouter. La chaîne doit être sérialisée en utilisant JSON (exemple donné dans la section suivante). |
OnKey |
Le raccourci clavier qui a été détecté. |
Après avoir ajouté le composant de code KeyboardShortcuts
au formulaire, configurez la propriété KeyConfig
avec un tableau de combinaisons de touches.
Par exemple :
["alt + r","alt + a","alt + d","alt + b","alt + p","alt + l","alt + t","alt + k"]
Pour plus d’informations sur les chaînes de combinaison de clavier, accédez à la bibliothèque KeyboardJS.
Behavior
Réaction aux événements d’appui de touches
Lorsqu’une combinaison de touches est utilisée, l’événement OnChange
est déclenché. La propriété OnKey
détient alors la combinaison.
Vous pourriez avoir un événement OnChange
similaire à :
If( Self.OnKey = "alt + a",
SetFocus(txtTextbox1)
);
If( Self.OnKey = "alt + r",
UpdateContext({ ctxResizableTextareaEvent:"SetFocus" & Text(Rand()) })
);
If( Self.OnKey = "alt + b",
SetFocus(txtTextbox2)
);
If( Self.OnKey = "alt + k",
UpdateContext({ ctxPickerEvent:"SetFocus" & Text(Rand()) })
);
If( Self.OnKey = "alt + d",
UpdateContext({ ctxDropdownEvent:"SetFocus" & Text(Rand()) })
);
If( Self.OnKey = "alt + l",
UpdateContext({ ctxTagListEvent:"SetFocus" & Text(Rand()) })
);
If( Self.OnKey = "alt + t",
UpdateContext({ ctxTableEvent:"SetFocusOnRow" & Text(Rand()) })
);
Ce gestionnaire d’événements met le focus sur divers contrôles en fonction de la combinaison de touches utilisée.
Limitations
Certains raccourcis clavier sont utilisés par Power Apps Studio pendant la modification de l’application, et certains sont utilisés par le navigateur. Pour cette raison, ce composant ne fonctionnera pas pour tous les raccourcis clavier tant que l’utilisateur n’aura pas placé le focus dans l’application.
Ce composant de code ne peut être utilisé que dans les applications canevas et les pages personnalisées.
Consultez d’autres notes de limitation dans la section Difficultés de conception des composants de la documentation GitHub.