Compartilhar via


KeyboardShortcut controlar

Um controle usado para capturar e atuar em eventos de teclado.

Nota

Documentação completa e código-fonte encontrados no repositório de componentes de código GitHub.

Description

Este componente de código registra manipuladores de eventos de pressionamento de tecla para permitir que atalhos de teclado sejam usados em aplicativos de tela ou páginas personalizadas. Ele não se destina ao uso em aplicativos baseados em modelo ou de portal.

Propriedades

Propriedade Description
KeyConfig Uma matriz de cadeias de caracteres indicando quais atalhos de teclado devem ser usados. A cadeia de caracteres deve ser serializada usando JSON (exemplo fornecido na seção a seguir).
OnKey O atalho do teclado que foi detectado.

Depois de adicionar o componente de código KeyboardShortcuts para o formulário, configure a propriedade KeyConfig com uma matriz de combinações de teclas.

Por exemplo:

["alt + r","alt + a","alt + d","alt + b","alt + p","alt + l","alt + t","alt + k"]

Para obter mais informações sobre as cadeias de caracteres de combinação do teclado, vá para a biblioteca KeyboardJS.

Comportamental

Respondendo aos eventos de pressionamento de tecla

Quando uma combinação de teclas é usada, o evento OnChange é gerado. A propriedade OnKey mantém a combinação.

Você pode ter um evento OnChange semelhante a:

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()) })
);

Esse manipulador de eventos define o foco em vários controles, de acordo com a combinação de teclas usada.

Limitações

Alguns atalhos de teclado são usados pelo Power Apps Studio ao editar o aplicativo, e alguns são usados pelo navegador. Por esse motivo, esse componente não funcionará para todos os atalhos de teclado até que o usuário foque no aplicativo.

Esse componente de código só pode ser usado em aplicativos de tela e páginas personalizadas.

Veja mais notas de limitação na seção desafios de design de componentes da documentação do GitHub.