Qt Quick Controls
Qt Quick Controls 는 Qt Quick 에서 완전한 인터페이스를 구축하는 데 사용할 수 있는 컨트롤 세트를 제공합니다. 이 모듈은 Qt 5.7에 도입되었습니다.
Qt Quick Controls 사용자 정의 가능한 스타일을 선택할 수 있습니다. 자세한 내용은 스타일링 Qt Quick Controls 을 참조하십시오.
모듈 사용하기
QML API
모듈의 QML 유형은 QtQuick.Controls
가져오기를 통해 사용할 수 있습니다. 이 유형을 사용하려면 .qml 파일에 다음 가져오기 문을 추가합니다:
import QtQuick.Controls
C++ API
Qt 모듈의 C++ API를 사용하려면 모듈 라이브러리에 직접 또는 다른 종속성을 통해 링크해야 합니다. CMake 및 qmake를 비롯한 여러 빌드 도구가 이를 지원합니다.
CMake로 빌드하기
find_package()
명령을 사용하여 Qt6
패키지에서 필요한 모듈 컴포넌트를 찾습니다:
find_package(Qt6 REQUIRED COMPONENTS QuickControls2)
target_link_libraries(mytarget PRIVATE Qt6::QuickControls2)
자세한 내용은 CMake로 빌드 개요를 참조하세요.
qmake로 빌드하기
qmake로 빌드하도록 모듈을 구성하려면 프로젝트의 .pro 파일에 QT
변수의 값으로 모듈을 추가합니다:
QT += quickcontrols2
소스에서 빌드
모듈은 Qt Image Formats 모듈을 사용하는 것이 좋지만 필수는 아닙니다. 이 모듈은 Imagine 스타일에서 사용하는 .webp
형식을 지원합니다.
컨트롤
Qt Quick Controls 의 전체 목록은 QML Types 을 참조하세요.
버튼 컨트롤
버튼에 공통된 기능을 제공하는 추상적인 기본 유형 | |
명령을 수행하거나 질문에 답하기 위해 클릭할 수 있는 푸시 버튼 | |
켜거나 끌 수 있는 확인 버튼 | |
충분히 길게 누르면 트리거되는 확인 버튼 | |
켜거나 끌 수 있는 전용 라디오 버튼 | |
사용자가 클릭할 수 있는 모서리가 둥근 푸시 버튼 컨트롤 | |
켜거나 끌 수 있는 버튼 | |
툴바에 적합한 모양의 버튼 |
컨테이너 컨트롤
머리글과 바닥글을 지원하는 스타일이 지정된 최상위 창 | |
컨테이너에 공통된 기능을 제공하는 추상적 기본 유형 | |
논리적 컨트롤 그룹을 위한 시각적 프레임 | |
논리적 컨트롤 그룹을 위한 시각적 프레임 및 제목 | |
TableView와 함께 제공되는 가로 헤더 보기 제공 | |
머리글 및 바닥글을 지원하는 스타일이 지정된 페이지 컨트롤 | |
애플리케이션 스타일 및 테마와 일치하는 배경 제공 | |
스크롤 가능한 보기 | |
각 항목 사이에 드래그 가능한 분할기를 사용하여 항목을 배치합니다. | |
스택 기반 탐색 모델 제공 | |
사용자가 옆으로 스와이프하여 페이지를 탐색할 수 있습니다. | |
사용자가 다른 보기 또는 하위 작업 간에 전환할 수 있습니다. | |
상황에 맞는 컨트롤을 위한 컨테이너 | |
TableView와 함께 세로형 헤더 보기 제공 |
컨트롤 위임
켜거나 끌 수 있는 체크 표시기가 있는 항목 델리게이트 | |
다양한 뷰 및 컨트롤에서 사용할 수 있는 기본 항목 델리게이트 | |
켜거나 끌 수 있는 라디오 표시기가 있는 전용 항목 델리게이트 | |
스와이프 가능한 아이템 델리게이트 | |
켜거나 끌 수 있는 스위치 표시기가 있는 항목 델리게이트 | |
트리뷰에 할당할 수 있는 델리게이트 |
인디케이터 컨트롤
예를 들어 콘텐츠가 로드되는 동안의 백그라운드 활동을 나타냅니다. | |
현재 활성 페이지를 나타냅니다. | |
작업 진행률 표시 | |
세로 또는 가로 대화형 스크롤 막대 | |
세로 또는 가로 비대화형 스크롤 표시기 |
입력 컨트롤
옵션 선택을 위한 결합 버튼 및 팝업 목록 | |
회전하여 값을 설정하는 원형 다이얼 | |
트랙을 따라 두 개의 핸들을 밀어서 값의 범위를 선택하는 데 사용됩니다. | |
트랙을 따라 핸들을 밀어서 값을 선택하는 데 사용됩니다. | |
여러 줄 텍스트 입력 영역 | |
한 줄 텍스트 입력 필드 | |
선택할 수 있는 항목의 회전 가능한 휠 |
메뉴 컨트롤
컨텍스트 메뉴 또는 팝업 메뉴로 사용할 수 있는 팝업 | |
창 메뉴 모음 제공 | |
메뉴 모음 내에 드롭다운 메뉴를 표시합니다. | |
메뉴 내에 항목 표시 |
탐색 컨트롤
스와이프 제스처로 열고 닫을 수 있는 사이드 패널 | |
스택 기반 탐색 모델 제공 | |
사용자가 옆으로 스와이프하여 페이지를 탐색할 수 있습니다. | |
사용자가 다른 보기 또는 하위 작업 간에 전환할 수 있습니다. | |
탭바에 적합한 모양을 가진 버튼 |
팝업 컨트롤
사용자와의 단기적인 상호 작용에 사용되는 표준 버튼과 제목이 있는 팝업 대화 상자 | |
스와이프 제스처로 열고 닫을 수 있는 사이드 패널 | |
컨텍스트 메뉴 또는 팝업 메뉴로 사용할 수 있는 팝업 | |
팝업과 유사한 사용자 인터페이스 컨트롤의 기본 유형 | |
모든 컨트롤에 대한 도구 팁 제공 |
구분 기호 컨트롤
메뉴의 항목 그룹을 인접 항목에서 분리합니다. | |
도구 모음의 항목 그룹을 인접한 항목에서 분리합니다. |
버전
Qt Quick Controls 2.0은 Qt 5.7에 도입되었습니다. 이후의 마이너 Qt 릴리스에서는 Qt Quick Controls 모듈의 가져오기 버전이 한 단계씩 증가하여, Qt 5.12에서는 가져오기 버전이 Qt의 마이너 버전과 일치하게 됩니다.
Qt 6에서는 주 버전과 부 버전이 모두 일치하며, Qt Qml의 임포트에서 버전 번호가 생략될 수 있습니다. 버전이 생략된 경우 최신 버전이 사용됩니다.
실험용 Qt Labs 모듈은 임포트 버전 1.0을 사용합니다.
Qt | QtQuick | QtQuick.Controls ,QtQuick.Controls.Material ,QtQuick.Controls.Universal ,QtQuick.Templates | Qt.labs.platform |
---|---|---|---|
5.7 | 2.7 | 2.0 | 1.0 |
5.8 | 2.8 | 2.1 | 1.0 |
5.9 | 2.9 | 2.2 | 1.0 |
5.10 | 2.10 | 2.3 | 1.0 |
5.11 | 2.11 | 2.4 | 1.0 |
5.12 | 2.12 | 2.12 | 1.0 |
6.0 | 6.0 | 6.0 | 1.0 |
... | ... | ... | ... |
개정
Qt Quick Controls 구현 방식에 따라 추가된 새 속성은 같은 이름의 사용자 정의 속성과 충돌할 수 있습니다. 예를 들어 다음 스니펫은 오류가 발생합니다:
import QtQuick.Controls 2.13 ApplicationWindow { // ... ComboBox { anchors.centerIn: parent // As currentValue was added in 2.14, the versioned import above // should cause this property to be used, but instead an error is produced: // "Cannot override FINAL property" property int currentValue: 0 } }
충돌을 피하려면 이러한 속성의 이름을 바꿔야 합니다.
모듈 진화
Qt Quick Controls 는 원래 터치 인터페이스에 중점을 두고 작성되었습니다. 데스크톱 인터페이스 개발은 이미 가능하지만, 보다 네이티브한 모양과 느낌을 제공하기 위한 작업이 계속 진행 중입니다.
Qt Quick Controls 의 변경 사항에는 Qt 6 시리즈에 적용된 모듈 API 및 기능의 중요한 변경 사항이 나열되어 있습니다.
기사 및 가이드
예제
참조
관련 모듈
라이선스 및 속성
Qt Quick Controls 는 The Qt Company의 상용 라이선스에 따라 제공됩니다. 또한 GNU 약소 일반 공중 사용 허가서 버전 3 또는 GNU 일반 공중 사용 허가서 버전 2에 따라 사용할 수 있습니다. 자세한 내용은 Qt 라이선스를 참조하십시오.
또한 Qt Quick Controls 에는 다음과 같은 허용 라이선스에 따라 타사 모듈이 포함될 수 있습니다:
© 2025 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.