Partilhar via


KeyboardShortcut Controlo

Um controlo utilizado para capturar e agir em eventos de teclado.

Nota

A documentação completa e o código de origem encontram-se no repositório de componentes de código do GitHub.

Description

Este componente de código regista processadores de eventos de premir teclas para permitir a utilização de atalhos de teclado dentro de aplicações de tela ou páginas personalizadas. Não se destina a utilização em aplicações condicionadas por modelo ou portal.

_Propriedades

Property Description
KeyConfig Uma matriz de cadeias que indica a que atalhos de teclado estar atento. A cadeia tem de ser serializada utilizando JSON (exemplo dado na secção seguinte).
OnKey O código da tecla do teclado que foi detetada.

Depois de adicionar o componente de código KeyboardShortcuts ao 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 combinação de teclado, aceda à biblioteca KeyboardJS.

Comportamento

Responder aos eventos de premir teclas

Quando é utilizada uma combinação de teclas, o evento OnChange é criado. A propriedade OnKey contém a combinação.

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

Este processador de eventos define o foco em vários controlos tendo em conta a combinação de teclas utilizada.

Limitações

Alguns atalhos de teclado são utilizados pelo Power Apps Studio ao editar a aplicação e outros são utilizados pelo browser. Por este motivo, este componente não funcionará para todos os atalhos de teclado até que o utilizador coloque o foco dentro da aplicação.

Este componente de código só pode ser utilizado em aplicações de tela e páginas personalizadas.

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