Поделиться через


KeyboardShortcut контроль

Элемент управления, используемый для захвата и обработки событий клавиатуры.

Заметка

Полная документация и исходный код находятся в разделе Репозиторий компонентов кода на GitHub.

Description

Компонент кода регистрирует обработчики события нажатия клавиши, разрешая использование сочетаний клавиш внутри приложений на основе холста или пользовательских страниц. Он не предназначен для использования в приложениях на основе модели или приложениях портала.

Свойства

Свойство Description
KeyConfig Массив строк, указывающих, какие сочетания клавиш следует прослушивать. Строка должна быть сериализована с использованием JSON (пример приведен в следующем разделе).
OnKey Обнаруженный код сочетания клавиш клавиатуры.

После добавления компонента кода KeyboardShortcuts в форму настройте свойство KeyConfig, указав массив комбинаций клавиш.

Например:

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

Дополнительные сведения о строках с сочетаниями клавиш: см. раздел библиотека KeyboardJS.

Поведение

Реагирование на события нажатия клавиш

При использовании комбинации клавиш вызывается событие OnChange. После этого в свойстве OnKey содержится комбинация.

Событие OnChange может быть, например, таким:

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

Этот обработчик событий устанавливает фокус на различных элементах управления с учетом используемой комбинации клавиш.

Ограничения

Некоторые сочетания клавиш используются Power Apps Studio при редактировании приложения, а некоторые используются браузером. По этой причине этот компонент не будет работать для всех сочетаний клавиш, пока пользователь не установит фокус внутри приложения.

Этот компонент кода можно использовать только в приложениях на основе холста и настраиваемых страницах.

Дополнительные примечания об ограничениях см. в разделе Проблемы дизайна компонентов документации GitHub.