한국어
Qt
 

Qt Quick Controls 2의 기본 아이디어는 대부분의 구현을 QML에서 C++로 전환하는 것이다. 기본 컨트롤들을 가볍게 만드는 것을 목표로 C++에서 무거운 작업을 수행하도록 한 것이다. 그 결과 가벼운 델리게이트, 런타임 오버헤드, 메모리 사용량, 코드 흐름 및 실행 속도가 향상되었다. 

다만 지금까지 기본 데스크톱 스타일에 대한 지원은 부족했었다. Controls 2의 주된 동기가 임베디드 장치에서 우수한 성능을 얻기 위한 것이었고 데스크톱용 Qt 위젯을 이미 보유하고 있었기 때문에 일부 필수적인 데스크톱 기능은 누락된 채로 뒀었다. 대신 공개 문서 (Universal, Material)가 있는 스타일이 제공되고 사용자 지정 스타일도 쉽게 만들 수 있도록 되어있다. 

 

Qt 6.0에서는 Controls 2에 두 가지 새로운 데스크탑 스타일이 추가된다. Windows 및 macOS 에 해당한다. Qt Quick 프리미티브를 사용하는 기존 Fusion 스타일과 달리 새로운 스타일은 그리기에 QStyle을 사용한다고 한다. 새로운 디자인이 추가되고 Widget의 의존성을 제거하면서 완전히 독립적인 컨트롤로 구현된다.

 

Qt 6 와 향후 몇 년 동안 데스크톱 개발 용 Widget 클래스와 동등한 수준의 컨트롤을 제공할 것이라고 한다. 아래는 새로운 데스크탑 스타일로 실행되는 Qt Quick Controls 2 애플리케이션의 스크린샷이다.

 

macOS style (dark mode):

macOS style.png

 

Windows style:

Windows style.png

 

Fusion style (for comparison):

Fusion style.png

 

관련 기사: https://www.qt.io/blog/desktop-styling-with-qt-quick-controls

번호 제목 글쓴이 날짜 조회 수
공지 Qt프로그래밍(QtQuick) Beginner를 위한 글 읽는 순서 운영자 2019.01.05 85337
136 Qt 5 코드를 Qt 6로 포팅하기 위해 도움이 되는 Clazy Framework file makersweb 2021.03.01 907
135 C++로 작성한 클래스를 QML에서 생성 file makersweb 2021.02.10 5231
134 Qt MQTT의 pus/sub 튜토리얼 file makersweb 2021.02.06 1602
133 Qt 를 사용하거나 기반으로 하는 응용프로그램 file makersweb 2021.01.30 3707
132 Loader를 사용하여 동적으로 QML 로드 makersweb 2021.01.19 1761
131 QThread 및 QMutex 예제 makersweb 2021.01.12 1312
130 그래픽 소프트웨어에서 디자인 내보내기 (Exporting Designs from Graphics Software) j2doll 2020.12.25 407
129 Qt5Compat 라이브러리를 사용하여 Qt5에서 Qt6로 포팅 [2] makersweb 2020.12.05 658
» Qt Quick Controls 2에 네이티브 데스크탑 스타일 추가 file makersweb 2020.11.23 481
127 QML 바인딩 끊김 진단 makersweb 2020.11.08 899
126 QML과 코루틴(Coroutines) makersweb 2020.11.03 572
125 Qt 6의 비동기 API makersweb 2020.10.19 1174
124 QRandomGenerator 클래스를 사용하여 난수(random values) 생성 makersweb 2020.10.17 1547
123 Qt 6에서 QList 변경사항 makersweb 2020.10.08 959
122 Qt 6.0의 개발 호스트 및 대상 플랫폼 makersweb 2020.09.16 965
121 main함수 명령줄 옵션 해석 makersweb 2020.09.01 2208
120 UI 폼(Form)작성 시 탭 순서(Tab Order) 설정 file makersweb 2020.08.24 2725
119 Qt로 데이터를 직렬화(serialization)하는 방법 makersweb 2020.08.04 2025
118 최초의 Qt 6.0 스냅샷 제공 (First Qt 6.0 Snapshot Available) j2doll 2020.06.21 587
117 Qt MQTT 에 대해서 file makersweb 2020.06.02 946