이 페이지에서

KeyNavigation QML Type (Uncreatable)

화살표 키를 이용한 키 탐색을 지원합니다. 더 보기...

Import Statement: import QtQuick

참고: 이 타입은 생성할 수 없는 타입입니다. QML에서 인스턴스화할 수 없습니다.

부착 속성

상세 설명

키 기반 사용자 인터페이스에서는 일반적으로 화살표 키를 사용하여 포커스가 가능한 항목 간을 이동할 수 있습니다. KeyNavigation 부착 유형은 화살표 키나 탭 키를 누를 때 포커스를 받아야 할 항목을 편리하게 지정할 수 있는 방법을 제공함으로써 이러한 동작을 가능하게 합니다.

다음 예제는 2x2 그리드 형태의 항목에 대한 키 탐색 기능을 보여줍니다:

import QtQuick

Grid {
    width: 100; height: 100
    columns: 2

    Rectangle {
        id: topLeft
        width: 50; height: 50
        color: focus ? "red" : "lightgray"
        focus: true

        KeyNavigation.right: topRight
        KeyNavigation.down: bottomLeft
    }

    Rectangle {
        id: topRight
        width: 50; height: 50
        color: focus ? "red" : "lightgray"

        KeyNavigation.left: topLeft
        KeyNavigation.down: bottomRight
    }

    Rectangle {
        id: bottomLeft
        width: 50; height: 50
        color: focus ? "red" : "lightgray"

        KeyNavigation.right: bottomRight
        KeyNavigation.up: topLeft
    }

    Rectangle {
        id: bottomRight
        width: 50; height: 50
        color: focus ? "red" : "lightgray"

        KeyNavigation.left: bottomLeft
        KeyNavigation.up: topRight
    }
}

focus 를 true 로 설정하여 처음에는 왼쪽 상단 항목이 포커스를 받습니다. 화살표 키가 눌리면, KeyNavigation의 left, right, up 또는 down 속성에 설정된 값에 따라 포커스가 적절한 항목으로 이동합니다.

KeyNavigation 부착 유형이 요청된 화살표 키나 탭 키에 대한 키 누름 및 뗄림 이벤트를 수신하는 경우, 해당 이벤트는 수락되어 더 이상 전파되지 않는다는 점에 유의하십시오.

기본적으로 KeyNavigation은 자신이 부착된 항목 이후에 키 이벤트를 수신합니다. 항목이 키 이벤트를 수락하면, KeyNavigation 부착 유형은 해당 키에 대한 이벤트를 수신하지 않습니다. ` priority ` 속성을 ` KeyNavigation.BeforeItem `로 설정하면, 이벤트가 항목 이후가 아닌 항목 이전에 키 탐색에 사용될 수 있습니다.

포커스가 이동하려는 항목이 활성화되지 않았거나 표시되지 않은 경우, 해당 항목을 건너뛰고 다음 항목으로 포커스를 이동하려고 시도합니다. 이는 동일한 KeyNavigation 핸들러를 가진 항목들이 연쇄적으로 연결되어 있는 경우 가능합니다. 연속된 여러 항목이 활성화되지 않았거나 표시되지 않은 경우에도 이 항목들은 모두 건너뛰어집니다.

KeyNavigation은 포커스를 이 항목으로 되돌리기 위해 반대 방향을 암시적으로 설정합니다. 따라서 ` left `를 다른 항목으로 설정하면, 해당 항목의 KeyNavigation에 ` right `가 설정되어 포커스가 이 항목으로 다시 돌아오게 됩니다. 그러나 해당 항목의 KeyNavigation에 right가 명시적으로 설정되어 있다면 아무런 변화가 일어나지 않습니다. 즉, 위의 예제에서는 어떤 항목에 대해서도 KeyNavigation.right나 KeyNavigation.down을 명시적으로 지정하지 않아도 동일한 동작을 구현할 수 있습니다.

Keys attached property도 참조하십시오 .

부착 속성 문서

KeyNavigation.backtab : Item [attached]

이 속성은 Shift+Tab 키 조합(Backtab)을 누를 때 포커스를 할당할 항목을 저장합니다.

KeyNavigation.down : Item [attached]

이 속성은 아래쪽 화살표 키를 누를 때 포커스를 할당할 항목을 저장합니다.

KeyNavigation.left : Item [attached]

이 속성은 왼쪽 커서 키가 눌렸을 때 포커스를 할당할 항목을 저장합니다.

KeyNavigation.priority : enumeration [attached]

이 속성은 키가 첨부된 항목 자체의 키 처리 전에 처리될지, 아니면 후에 처리될지를 결정합니다.

상수설명
KeyNavigation.BeforeItem일반 항목 키 처리 전에 키 이벤트를 처리합니다. 이벤트가 키 탐색에 사용되는 경우, 해당 이벤트는 수락되며 항목으로 전달되지 않습니다.
KeyNavigation.AfterItem(기본값) 일반 항목 키 처리 후에 키 이벤트를 처리합니다. 항목이 키 이벤트를 수락하면, 해당 이벤트는 ' KeyNavigation ' 연결 속성 핸들러에 의해 처리되지 않습니다.

KeyNavigation.right : Item [attached]

이 속성은 오른쪽 방향 키가 눌렸을 때 포커스를 할당할 항목을 저장합니다.

KeyNavigation.tab : Item [attached]

이 속성은 Tab 키를 누를 때 포커스를 할당할 항목을 저장합니다.

KeyNavigation.up : Item [attached]

이 속성은 위쪽 화살표 키가 눌렸을 때 포커스를 할당할 항목을 저장합니다.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.