KeyboardShortcut 控制
用來擷取並作用於鍵盤事件的控制項。
Note
完整文件和原始程式碼可在 GitHub 程式碼元件存放庫中找到。
描述
此程式碼元件註冊按鍵動作事件處理常式,以允許在畫布應用程式或自訂頁面中使用鍵盤快速鍵。 它不適用於模型導向或入口網站應用程式。
內容
屬性 | 描述 |
---|---|
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 文件的元件設計挑戰區段中查看更多限制說明。