다음을 통해 공유


KeyboardShortcut 제어

키보드 이벤트를 캡처하고 작동하는 데 사용되는 컨트롤입니다.

노트

GitHub 코드 구성 요소 리포지토리에서 전체 설명서 및 소스 코드를 확인할 수 있습니다.

Description

이 코드 구성 요소는 키보드 단축키를 캔버스 앱 또는 사용자 정의 페이지 내에서 사용할 수 있도록 키 누르기 이벤트 핸들러를 등록합니다. 모델 기반 또는 포털 앱에서 사용하기 위한 것이 아닙니다.

속성

Property 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 문서의 구성 요소 디자인 과제 섹션에서 더 많은 제한 사항을 참조하세요.