Qt 6.11의 새로운 기능
Qt 6.11의 새로운 모듈
Qt 6.11에는 다음과 같은 모듈이 추가되었습니다:
- Qt 캔버스 페인터 - Qt Quick 및 QRhi-기반 렌더 타겟을 위한 가속 2D 페인팅 솔루션.
- Qt OpenAPI - 업스트림 Open API 생성기의 확장으로, 일반적으로 RESTful API에 사용되는 Qt HTTP 클라이언트를 생성합니다.
- Qt TaskTree - 비동기 작업 워크플로우를 구성하고 실행하는 선언적 방법을 제공합니다.
- Qt Labs StyleKit - 공유 디자인 속성 세트를 통해 스타일링( Qt Quick Controls )을 간소화하는 전용 스타일링 API.
새로운 모듈은 기술 프리뷰 버전으로, Qt의 호환성 약속에서 해당 API는 제외됩니다. 하지만 추가 개선을 위한 피드백을 환영합니다! Qt 지원 센터의 Qt 버그 추적기, Qt 포럼 또는 링크된 블로그 게시물의 댓글을 통해 보내주세요.
Qt 캔버스 페인터 모듈
Qt 캔버스 페인터는 Qt Quick 및 QRhi-기반 렌더 타깃을 위한 가속 2D 페인팅 솔루션입니다. 개요는 Qt 캔버스 페인터 블로그 시리즈를 참조하십시오.
Qt OpenAPI 모듈
Qt OpenAPI는 Open API 생성기를 확장하여 일반적으로 RESTful API에 사용되는 Qt HTTP 클라이언트를 생성합니다.
Qt 태스크트리 모듈
Qt 태스크트리는 C++에서 비동기 작업 워크플로를 구성하고 실행하는 선언적 방법을 제공합니다. 개요는 소개 블로그 포스트 시리즈를 참조하세요.
Qt Labs StyleKit 모듈
Qt Labs StyleKit은 공유 디자인 속성 세트를 통해 스타일링( Qt Quick Controls )을 간소화하는 전용 스타일링 API입니다.
Qt 6.11의 새로운 기능
ActiveQt 모듈
주목할 만한 변경 사항이 없습니다.
Qt Bluetooth 모듈
주목할 만한 변경 사항이 없습니다.
Qt CoAP Module
- QCoapClient::bindInterface 통신을 특정 네트워크 인터페이스에 바인딩할 수 있습니다.
Qt Core Module
- QDate 은 이제 약한 증분 가능(즉, 수정 전/후 증분(및 감소) 연산자를 구현)하며 C++20
std::views::iota에서 사용할 수 있습니다. - QJniObject 이제 반환 유형으로
std::expected(또는 이와 동등한 유형)을 사용하여 API를 호출할 수 있으며, 이 경우 Java 예외는 프레임워크에서 소비되지 않고 예기치 않은 결과로 호출자에게 다시 전달됩니다. - QRangeModel::ItemAccess 는 다중 역할 항목 유형의 역할 데이터에 액세스하기 위한 사용자 정의 지점을 제공합니다.
- QRangeModel 이제 C++20
std::views::filter과 같이 상수std::begin/end구현을 제공하지 않는 C++ 범위와 함께 사용할 수 있습니다. - 다중 역할 항목에 동일한 QObject 하위 클래스를 사용하는 범위의 경우, 새로운 QRangeModel::autoConnectPolicy 을 Full 또는 OnRead로 설정하여 QObject 항목의 모든 노출된 속성의 변경된 신호를 해당 dataChanged() 신호 방출에 연결할 수 있습니다.
- QRangeModelAdapter 는 QRangeModel 가 작동하는 범위에 일반적인 C++ 컨테이너 API를 제공하여, 사용자 코드가 QModelIndex 로 작업할 필요 없이 변경 시 관련 QAbstractItemModel 신호가 방출되도록 합니다. 이 새로운 클래스는 기술 프리뷰 중입니다.
- 이제 Windows에서 Qt는 CMake로 빌드된 실행 파일에 대한 애플리케이션 매니페스트를 자동으로 생성합니다. 이 매니페스트는
PROJECT_VERSION에서 애플리케이션 버전을 파생하고, CMake 변수를 통해 프로젝트 식별자 및 실행 수준의 사용자 정의를 지원하며, Windows 10 및 Windows 11과의 호환성을 선언하고,longPathAware을 활성화합니다.
Qt Concurrent 모듈
주목할 만한 변경 사항이 없습니다.
Qt D-Bus 모듈
주목할 만한 변경 사항이 없습니다.
Qt Graphs Module
- 사용자가 캔들스틱 또는 박스 플롯 그래프와 같은 2D 그래프 유형을 직접 만들 수 있도록 새로운 QCustomSeries 클래스를 추가했습니다.
- QBar3DSeries 의 rowAxis, valueAxis, columnAxis 속성과 QScatter3DSeries 의 axisX, axisY, axisZ 속성 형태의 3D 그래프에 다축 지원을 추가했습니다. QSurface3DSeries
- 파이 및 도넛 그래프에서 하위 슬라이스를 만들 수 있도록 QPieSlice 에 subSlicesCount, subSlicesSum, subSlicesRatio, sliceChildren 속성을 추가했습니다.
- QDateTimeAxis 및 QValueAxis 에 visualMin 및 visualMax 프로퍼티를 추가하여 가시 축 범위를 유지하도록 했습니다.
- QAreaSeries 에 gradient 및 selectedGradient 속성을 추가하여 면적 그래프에서 그라데이션을 사용할 수 있도록 했습니다.
- QBarCategoryAxis 에 labelPosition 속성을 추가하여 막대 그래프에서 라벨 배치를 조정할 수 있도록 했습니다.
- QDateTimeAxis 에 timeZone 속성을 추가하여 축에 고유한 시간대를 설정할 수 있도록 했습니다.
- QDateTimeAxis 에 pan 및 zoom 속성을 추가하여 다음과 같은 방식으로 패닝 및 확대/축소를 허용합니다. QValueAxis
- 축의 테마 색상을 재정의 할 수 있도록 QAbstractAxis 에 color 및 subColor 속성을 추가했습니다.
- QLineSeries 에 joinStyle, lineStyle, strokeStyle, dashOffset, dashPattern 속성을 추가하여 선 그래프에서 추가 스타일을 지정할 수 있도록 했습니다.
- QSplineSeries 에 optimized 프로퍼티를 추가하여 성능과 정확도가 높은 기본 방법 대신 Catmull-Rom 보간을 사용할 수 있도록 했습니다.
- QBar3DSeries 에 customRowLabels 및 customColumnLabels 속성을 추가하여 행 및 열 레이블을 재정의할 수 있도록 했습니다.
- QCustom3DItem 에 rotationAbsolute 속성을 추가하여 커스텀 아이템 로테이션 문제를 수정했습니다.
- QSurface3DSeries 에 rowsSanitized 속성을 추가하여 유효하지 않은 데이터가 있는 행을 자동으로 제거합니다.
- GraphsItem3D 및 Q3DGraphsWidgetItem 에 cutoffMargin 을 추가하여 그래프 여백 근처의 항목 컬링 감도를 조정했습니다.
- 하나의 GraphsView 에 여러 개의 QBarSeries 를 지원하도록 추가했습니다.
- QBarSeries 에서 음수 값에 대한 지원을 추가했습니다.
- LineSeries 에서 시각적 간격을 초래하는 유효하지 않은 값에 대한 지원을 추가했습니다.
Qt GRPC 모듈
- 나가는 요청과 들어오는 응답을 가로채고 수정할 수 있도록 QtGrpc 에 새로운 클라이언트 가로채기 메커니즘을 추가했습니다.
- Qt 6.11은 QGrpcCallOptions 와 QGrpcChannelOptions 에 비교 연산자(
operator==와operator!=)를 추가하여 옵션 객체 간의 직접적인 동일성 검사를 가능하게 합니다. - QGrpcOperation 클래스는 서버 초기 메타데이터가 수신되는 즉시 RPC 핸들러에 알리는 serverInitialMetadataReceived() 신호를 도입했습니다.
- QGrpcChannelOptions 이제 클래스는 filterServerMetadata() 및 setFilterServerMetadata() 메서드를 제공하여 프로토콜 관련 메타데이터가 서버 응답에 포함되는지 여부를 제어합니다.
- QtGrpc 네임스페이스는 RpcType 열거형과 RpcDescriptor 구조체를 도입하여 서비스 이름, 메서드 이름 및 통신 패턴과 함께 gRPC 메서드를 설명합니다.
Qt GUI 모듈
- 도크 위젯이 도킹된 상태와 플로팅 상태로 변경될 때 도킹 창 프레임워크에서 새로운 QAccessible::RoleChange 유형의 접근성 이벤트를 발생시킵니다.
- 새로운 접근성 역할 Switch 은 Qt Quick Controls 의 Switch 유형에서 사용됩니다.
- 새로운 접근성 속성 Orientation 은 슬라이더 및 유사한 컨트롤에서 접근성 클라이언트에게 방향을 보고하는 데 사용됩니다.
- QRawFont glyphCount ()를 가져오고 글꼴의 글리프 인덱스에 대한 glyphName()를 조회하는 API가 추가되었습니다.
- QTextCharFormat font features 와 variable axes 를 설정하는 새로운 API가 추가되었습니다.
Qt Help 모듈
주목할 만한 변경 사항이 없습니다.
Qt HttpServer 모듈
- HTTP/1.0 클라이언트에 대한 지원이 추가되었습니다.
- Qt 6.11은 QHttpServerConfiguration 에 구성 가능한 요청 크기 제한을 도입하여 애플리케이션이 과도한 요청으로부터 보호할 수 있도록 합니다. 새로운 메서드에는 setMaximumUrlSize(), setMaximumTotalHeaderSize(), setMaximumHeaderFieldSize(), setMaximumHeaderFieldCount() 및 setMaximumBodySize()가 포함됩니다. 제한을 초과하면 서버는 적절한 HTTP 오류 코드(414, 431 또는 413)로 응답합니다.
- 이제 라우트 핸들러는
QFuture<void>를 반환하고 다른 스레드에서 QHttpServerResponder&& 인수를 사용하여 응답할 수 있으므로 CPU 집약적인 요청 처리를 메인 서버 스레드에서 오프로드할 수 있습니다. HTTP/2 연결의 경우 여러 요청을 동시에 처리할 수 있으며, HTTP/1.x 연결은 요청을 순차적으로 처리하지만 여전히 백그라운드 처리의 이점을 누릴 수 있습니다. 소켓 I/O는 항상 QHttpServer 스레드에 남아 있습니다. - isResponseCanceled()가 QHttpServerResponder 에 추가되어 핸들러가 클라이언트의 연결을 끊은 시점을 감지하고 불필요한 처리를 피하기 위해 조기에 종료할 수 있습니다.
Qt Image Formats 모듈
일부 번들 타사 모듈이 업데이트되었습니다. 라이선스 변경 사항을 참조하세요.
Qt Lottie Animation
- 경로 채우기 규칙에 대한 지원이 추가되었습니다.
- 빌드 시 Lottie에서 QML로 변환하기 위한 CMAKE 명령 qt_target_qml_from_lottie가 추가되었습니다.
- lottietoqml 및 VectorImage 백엔드는 더 이상 테크 프리뷰가 아닙니다.
- VectorImage: 경로를 따라 도형 애니메이션 지원이 추가되었습니다.
- VectorImage: 모핑 애니메이션 지원 추가(두 도형 사이 보간).
- VectorImage: 매트 레이어 지원이 추가되었습니다.
Qt MQTT 모듈
주목할만한 변경사항이 없습니다.
Qt Multimedia 모듈
- 실시간 오디오 처리를 위해 QAudioSource 및 QAudioSink 의 시작 메서드에 콜백 기반 오버로드를 추가했습니다.
Qt Network Module
- QNetworkRequest 은 이제 현재 요청에 대한 TCP 연결 유지 매개변수를 지정할 수 있습니다. 또한 QNetworkAccessManager 에서 기본 TCP 연결 유지 매개변수가 변경되어 이제 비활성 연결은 2분 동안 비활성 상태가 지속되면 종료됩니다.
Qt Network 인증 모듈
주목할 만한 변경 사항이 없습니다.
Qt NFC 모듈
주목할 만한 변경 사항이 없습니다.
Qt OPC UA 모듈
- 번들로 제공되는 Open62541이 v1.4.13으로 업데이트되었습니다. 라이선스 변경 사항도 참조하세요.
Qt OpenGL 모듈
주목할 만한 변경 사항이 없습니다.
Qt Positioning Module
- 웹 어셈블리용 Qt 어플리케이션은 이제 브라우저의 GeoLocation API를 백엔드로 사용할 수 있습니다.
Qt 인쇄 지원 모듈
- 인쇄 대화 상자에 대한 접근성이 개선되었습니다: 스크린 리더 지원 및 키보드 탐색을 개선하기 위해 라벨 버디와 적절한 포커스 순서가 설정되었습니다.
Qt Protobuf 모듈
- qprotobufmessage_cast() 함수는 QProtobufMessage 포인터의 안전한 다운캐스팅을 제공합니다. qobject_cast () 또는
dynamic_cast()과 유사하게 런타임에 쉽고 안전하게 유형 확인 및 변환을 수행할 수 있습니다.
Qt Qml 모듈
- QML Language Server 에 작업 공간 지원이 추가되었습니다.
- QML Language Server 에 C++ 정의로 이동 지원이 추가되었습니다.
.contextProperties.ini구성 파일을 통해 컨텍스트 속성 경고를 무음으로 설정할 수 있는 지원이 추가되었습니다.- 기존
final키워드 및 도구 지원과 함께 실수로 프로퍼티 섀도잉을 방지하고 QML에서 명시적 프로퍼티 재정의가 가능한override및virtual키워드를 도입했습니다. 자세한 내용은 프로퍼티 섀도잉 및 오버라이드 시맨틱을 참조하세요. - easingCurve 값 유형에 이름을 부여하고 Easing 네임스페이스를 싱글톤으로 변환했습니다.
- QQmlContext 에 list of child contexts 과 find an object by id 에 API를 추가했습니다.
- qmlformat에 GroupAttributesTogether 옵션을 추가했습니다. 이는 NormalizeOrder 옵션을 의미하며 속성(속성 정의, 속성 바인딩, 메서드, 시그널 및 열거형)을 정렬하지 않고 QML 카테고리의 순서를 다시 지정합니다.
- 단일 라인 빈 개체 옵션을 qmlformat에 추가했습니다. 빈 개체가 두 번째 줄로 확장되는 것을 방지합니다.
Qt Quick 모듈
- 빌드 시 SVG에서 QML로 변환하기 위한 CMAKE 명령 qt_target_qml_from_svg를 추가했습니다.
- Flickable 에 position 또는 flick 에 대한 보기와 flick to a position 에 대한 API를 추가했습니다.
Qt Quick Controls 모듈
- SpinBox 과 유사하지만 부동 소수점 값을 지원하는 DoubleSpinBox 을 추가했습니다.
- defaultButton 및 defaultStandardButton 을 DialogButtonBox 에 추가했습니다. 설정하면 DialogButtonBox 이 포커스를 받을 때마다 해당 버튼이 강조 표시되고 activeFocus를 받습니다.
Qt Quick Dialogs 모듈
주목할 만한 변경 사항이 없습니다.
Qt Quick 효과 모듈
- Qt 6.11은 독립적인 모서리 반경 제어를 위해 RectangularShadow 에 네 가지 새로운 프로퍼티를 추가했습니다: topLeftRadius, topRightRadius, bottomLeftRadius, 그리고 bottomRightRadius 입니다. 각 프로퍼티는 설정하지 않으면 기존의 radius 프로퍼티로 돌아가거나 0으로 설정하면 날카로운 모서리를 만들어 모서리마다 다른 모서리 반경을 가진 보다 유연한 그림자 모양을 만들 수 있습니다.
Qt Quick Layouts 모듈
주목할 만한 변경 사항이 없습니다.
Qt Quick Particles 모듈
주목할 만한 변경 사항이 없습니다.
Qt Quick Timeline 모듈
주목할 만한 변경 사항이 없습니다.
Qt Quick Test Module
주목할 만한 변경 사항이 없습니다.
Qt Quick 위젯 모듈
주목할 만한 변경 사항이 없습니다.
Qt Quick 3D 모듈
- 사용자 정의 렌더 패스를 위한 QML API가 추가되어 C++ 지식 없이도 QML에서 직접 커스텀 렌더링 파이프라인을 사용할 수 있습니다.
- ExtendedSceneEnvironment 에 ssrEnabled 프로퍼티를 추가하여 스크린 스페이스 리플렉션(SSR)을 활성화했습니다.
- 스크린 스페이스 전역 조명(SSGI) 효과를 ExtendedSceneEnvironment 에 추가하여 앰비언트 오클루전 및 실시간 간접 조명을 제공합니다.
- 템포럴 AA 및 모션 블러 효과를 위한 오브젝트별 모션 벡터 생성 추가
- 레이어링 지원을 추가하여 노드를 그룹화하고 카메라가 렌더링할 레이어를 제어할 수 있습니다.
- 링크된 목록 순서 독립적 투명도(OIT) 렌더링 메서드 추가
- 포스트 프로세싱 이펙트 및 커스텀 머티리얼에
NORMAL_ROUGHNESS_TEXTURE지원 추가 - PCF 소프트 섀도우에 블루 노이즈 샘플링을 추가하여 노이즈 패턴이 덜 보이도록 품질을 개선했습니다.
- 텍스처의 Qt Quick 콘텐츠에 대한 사전 곱셈 알파의 적절한 처리를 추가했습니다.
- 포스트 프로세싱 이펙트에
VIEW_MATRIX및PROJECTION_MATRIX노출을 추가했습니다. - 직사각형 기반 오브젝트 선택을 위해 View3D 에 pickInRect() 메서드를 추가했습니다.
- View3D 에 closestPointPick() 메서드를 추가하여 표면에서 주어진 지점에 가장 가까운 지점을 찾도록 했습니다.
- 특정 모델 파라미터를 허용하는 rayPick() 오버로드 추가
- 씬 지오메트리를 기반으로 모양을 동적으로 계산하는 파티클 이미터용 씬 모양을 추가했습니다.
- 간소화된 커스텀 텍스처 제공자 생성을 위한 QQuick3DTextureProviderExtension API 추가
- QSSGFrameData 에 scheduleRenderResults() 함수를 추가하여 특정 렌더 패스 결과를 요청할 수 있습니다.
- Assimp를 v6.0.2로 업데이트했습니다.
Qt Quick 3D XR 모듈
- OpenGL 데스크톱 Linux 지원 추가(모나도, Xlib, 웨이랜드 플랫폼)
- processTouch()를 확장하여 터치 이벤트를 선택 가능한 모든 Model 으로 전달할 수 있게 되었습니다. XrItem
- 3D 터치 상호작용을 위한 표면 위치 및 노멀 벡터 정보를 반환하도록 touchpointState()를 개선했습니다.
- 전용 QQuickOverlay를 통해 XrItem 에 팝업 및 메뉴 지원 추가
- OpenXR을 v1.1.49로 업데이트했습니다.
Qt Quick 3D Physics 모듈
주목할 만한 변경 사항이 없습니다.
Qt Quick 벡터 이미지 모듈
- SVG 마스크에 대한 지원이 추가되었습니다.
- SVG 후처리 필터에 대한 지원이 추가되었습니다. Qt SVGfeGaussianBlur, feColorMatrix, feOffset, feFlood, feBlend, feComposite 및 feMerge.
- 경로를 따라 도형 애니메이션에 대한 지원이 추가되었습니다.
- SVG <심볼> 태그에 대한 지원이 추가되었습니다.
Qt Serial Port 모듈
주목할 만한 변경 사항이 없습니다.
Qt Serial Bus 모듈
주목할만한 변경 사항이 없습니다.
Qt SQL 모듈
주목할만한 변경 사항이 없습니다.
Qt SVG 모듈
offset-path및offset-distance을 통해 CSS 모션 경로 애니메이션 지원이 추가되었습니다.offset-path은 경로를 정의하는 경로 함수만 지원합니다.- 애니메이션 전체에 대한 CSS 애니메이션 타이밍 기능 지원이 추가되었습니다. 현재는 미리 정의된 키워드(
linear,step-start,ease등)만 지원됩니다.
Qt Test 모듈
- 현재 글로벌 테스트 데이터의 이름을 검색하는 QTest::currentGlobalDataTag() 함수를 추가했습니다.
- QTest::defaultTryTimeout 을 추가하여 QTRY_* 함수에 사용되는 기본 시간 제한을 구성할 수 있도록 했습니다.
- QCOMPARE 이제 음수 0과 NaN 값에 대한 부호를 인쇄하고 NaN 페이로드를 인쇄합니다.
- QTEST_THROW_ON_FAIL 와 QTEST_THROW_ON_SKIP 는 이제 QtConcurrent 내에서 QCOMPARE/QSKIP를 호출할 때 작동합니다.
- QTest::failOnWarning()는 이제 중요 메시지를 포함한 모든 메시지 유형 >= 경고에서 실패합니다.
- macOS에서 이제 전체 테스트 실행 동안 디스플레이 절전 및 앱 낮잠이 무조건 비활성화됩니다.
- Callgrind 지원이 Valgrind v3.25.1로 업데이트되어 RISCV 64비트 Linux에 대한 지원이 추가되었습니다.
Qt 가상 키보드 모듈
- Qt 6.11은 VirtualKeyboardSettings 에서 arrowKeyNavigationEnabled 속성을 도입하여 개발자가 입력 패널이 표시될 때 키보드 키 사이를 이동하는 데 화살표 키(왼쪽, 오른쪽, 위, 아래)와 Return을 사용할 수 있는지 여부를 제어할 수 있습니다. 속성 기본값은 빌드 시간 구성 플래그
QT_VIRTUALKEYBOARD_ARROW_KEY_NAVIGATION를 기반으로 합니다. - KeyboardStyle 유형에 keyboardDesignMaximumHeight 속성을 추가했습니다. 이 속성을 사용하면 키보드가 화면의 대부분을 겹치는 것을 방지할 수 있습니다.
Qt WebEngine 모듈
- Qt WebEngine 는 이제 Chromium 140을 기반으로 합니다.
- Chromium은 C++ 컴포넌트를 대체하기 위한 새로운 Rust 컴포넌트를 추가했습니다. Qt WebEngine 이제 선택적으로 이러한 Rust 컴포넌트를 사용하여 빌드할 수 있습니다. 이를 위해서는 Rust 툴체인을 설치하고
-feature-webengine-rust-build로 구성해야 합니다. 기본 동작은 이전 C++ 컴포넌트로 빌드하는 것입니다. - 세션 쿠키가 디스크에 저장되지 않도록 OnlyPersistentCookies 정책을 추가했습니다.
- 접근성을 위해 HTML 'id' 속성을 자동화 ID로 사용하도록 강제하는 TrimAccessibilityIdentifiers 설정이 추가되었습니다.
- HTML
inputmode글로벌 속성에 대한 지원이 추가되었습니다. - 교차 출처 리소스에 대한 리디렉션의
fetch()API 처리를 개선했습니다. - Pepper 플러그인 API 코드 제거.
chrome://usb-internals디버그 페이지를 활성화했습니다.
Qt WebView 모듈
- WebView 에 대한 C++ 바인딩을 추가하여 Qt Widgets 기반 애플리케이션에서 모듈을 사용할 수 있도록 했습니다. 새로운 C++ API는 기술 미리보기 상태로 출시되며 향후 변경될 수 있습니다.
Qt Widgets 모듈
- QWizard 마법사의 전체 너비에 걸쳐 배너를 늘릴 수 있는 새로운 StretchBanner 옵션이 추가되었습니다.
- QAbstractItemView 키보드 검색()의 기본 구현이 모델의 데이터에 대해 주어진 문자열을 일치시키는 방법을 조정할 수 있는 새로운 keyboardSearchFlags 프로퍼티가 생겼습니다.
- QColumnView 미리보기 열의 표시 여부를 지정하는 새로운 previewColumnVisible 속성이 추가되었습니다.
- 새로운 QStyleOptionMenuItemV2 클래스는 스타일에 의해 렌더링되는 항목에 마우스가 눌렸는지 여부를 나타내는 플래그를 추가합니다.
- QTabBar 이제 tabsClosable 이 참이면 탭을 가운데 클릭하면 tabCloseRequested 을 출력합니다.
Qt XML 모듈
주목할 만한 변경 사항이 없습니다.
도구
QDoc 문서 생성기
- 새로운
\qmlsingletontype명령,QML_SINGLETON매크로 자동 감지, QML 파일에서pragma singleton인식 등 QML 싱글톤 유형에 대한 포괄적인 지원이 추가되었습니다. - QDoc은 이제 링크, 한정된 식별자에 대한 구문 강조 표시,
anchors.fill및Component.onCompleted과 같은 속성 표기법에 대한 올바른 마크업을 포함하여 QML 모듈 별칭(import ... as ...구문)을 완벽하게 지원합니다. - 새로운
\toc/\endtoc및\tocentry명령을 사용하여 문서 소스 파일에서 계층적 목차 구조를 지정할 수 있습니다. QDoc은 탐색 사이드바를 위한<project>_toc.xml파일을 생성합니다. - 이제 \overload 명령은 이제 선택적 인수를 받습니다.
\overload primary구문을 사용하여 오버로드 세트에서 기본 함수를 지정할 수 있습니다. - QDoc은 이제 과부하된 신호 및 슬롯에 대한 컨텍스트 연결 예제를 생성합니다.
includeprivate구성 변수를 사용하면 비공개 C++ 멤버를 문서화할 수 있습니다. 이제 순수 가상 함수는 무조건 문서화됩니다.- C++20 개념: 이제 QDoc에서 함수 및 클래스 템플릿에 대한 C++20 필수 절을 추출하여 표시합니다. 템플릿-헤드 및 후행 제약 조건 위치가 모두 지원됩니다.
- 이제 \code 명령은 이제 코드 블록의 프로그래밍 언어를 지정하는 선택적 인수를 허용합니다. 구문 강조 표시를 비활성화하려면 "text"를 사용합니다.
\meta keywords인수는 검색 엔진 최적화 및 후처리를 위해 사용자 지정 키워드를 HTML<meta>요소로 추가합니다.- 이제 "첨부된" 링크 조건을 사용하여 QML 첨부 속성에 대한 명시적 링크가 지원되므로 일반 속성 이름과 첨부된 속성 이름이 충돌할 때 명확하게 구분할 수 있습니다.
- 이제 두 개 이상의 매개변수가 포함된 템플릿 선언이 가독성을 높이기 위해 여러 줄 형식으로 렌더링됩니다. HTML 출력은 사용자 지정 스타일링을 위해
template-blockCSS 클래스를 사용합니다. - QDoc은 이제
Q_PROPERTY으로 선언된 문서화되지 않은 C++ 속성에 대해 경고하여 모든 API 요소에서 일관된 문서화 범위를 보장합니다. - QDoc은 이제 문서가 스스로 링크되는
\sa명령에서 자체 링크에 대해 경고합니다. logwarnings구성 변수는 QDoc이 모든 경고를<project>-qdoc-warnings.log파일에 기록하도록 합니다. 새로운logwarnings.disablecliargs하위 옵션은 이식 가능한 로그의 로그 헤더에서 CLI 인수를 생략합니다.- 이제 다중 모듈 빌드에 대한 QDoc 경고에 프로젝트 이름 접두사가 포함됩니다.
- 구성 개선:
codelanguages: \code 블록에서 허용되는 추가 프로그래밍 언어를 지정하여 문서에 구문 강조 표시가 내장되지 않은 언어로 된 코드를 포함할 수 있습니다.imagesoutputdir: 다중 모듈 빌드에서 파일 이름 충돌을 해결하기 위해 이미지에 대한 사용자 지정 출력 하위 디렉터리.internalfilepatterns:*_p.h과 같은 파일/경로 이름 패턴에 따라 클래스를 내부로 자동 표시.projectroot: 경고 로그에서 절대 경로를 상대 경로로 변환하기 위한 루트 디렉터리를 설정하여 빌드 환경 간 이식성을 개선합니다.QDOC_PROJECT_ROOT환경 변수로도 사용할 수 있습니다.
- 서식 지정 명령은 이제
\title인수에서 작동하고,\generatelist은 Qt 도움말 프로젝트 TOC 구조에서 올바르게 작동하며, 사용자 지정 열거자 접두사는\qmlenum에서 지원됩니다. - QML 및 C++ 멤버 문서의 HTML 구조가 통합되었습니다. 이 변경으로 QDoc의 HTML 출력에 새로운 CSS 클래스(
qml-member,qml-property,qml-method,qml-property-group)가 도입되었습니다. - 코드 구문 분석: 범위 열거형 분해, 사이클 감지를 통한 QML 상속 처리, 인덱스 파일에서 선언된 유형 및 변수 정보의 올바른 보존이 개선되었습니다.
- 최소 지원 버전이 17.0.6으로 업데이트되어 LLVM/Clang 21 호환성이 추가되었습니다.
\tableofcontents명령은 공식적으로 더 이상 사용되지 않습니다.
Qt Linguist
- 런타임 동작에 영향을 주지 않고 ID 기반 번역을 의미 있는 그룹으로 분류하는 방법으로 레이블을 추가했습니다. 자세한 내용은 텍스트 ID 기반 번역 문서와 블로그 게시물을 참조하세요.
- 문서에 새로운 i18n 예제를 추가했습니다.
- LLM을 사용한 자동 번역을 위해 Qt Linguist 에 대한 AI 번역을 추가했습니다. 자세한 내용은 AI 번역 문서와 블로그 게시물을 참조하세요.
- 텍스트 기반 번역에서 ID 기반 번역으로 프로젝트를 마이그레이션하기 위한 ltext2id 실행 파일을 추가했습니다. 자세한 내용은 ltext2id 사용하기를 참조하세요.
- TS 파일에 대한 일괄 유효성 검사를 수행하기 위한 lcheck 실행 파일이 추가되었습니다. 자세한 내용은 lcheck 사용하기를 참조하세요.
- 업데이트 파서에서 C++ 어트리뷰트 지원 추가
- lupdate 구문 분석기에서 //= 메타스트링 사용이 더 이상 사용되지 않습니다.
- .pro 파일을 직접 처리하기 위한
lupdate -pro옵션이 더 이상 사용되지 않습니다. 대신lupdate-pro을 사용하세요. - lprodump 실행 파일을 제거했습니다. 이제
lupdate-pro -dump-json옵션을 통해 해당 기능을 사용할 수 있습니다.
플랫폼 변경 사항
빌드 시스템 변경 사항
- -generate-vcpkg-manifest 구성 옵션이 추가되었습니다. 이 옵션은 빌드 디렉터리에 vcpkg.json 파일을 생성합니다. Qt를 구성하지 않고 매니페스트만 생성하려면 -generate-vcpkg-manifest -dry-run으로 config를 실행합니다.
- -vcpkg로 구성하는 경우 빌드 디렉터리에 vcpkg 매니페스트 파일을 생성하고 해당 매니페스트 파일을 사용하도록 VCPKG_MANIFEST_DIR을 빌드 디렉터리로 설정합니다. 매니페스트 생성은 -no-generate-vcpkg-manifest로 해제할 수 있습니다. 매니페스트 디렉터리 설정을 끄려면 - -UVCPKG_MANIFEST_DIR을 전달하여 구성할 수 있습니다.
데스크톱 플랫폼
Windows
- QOperatingSystemVersion 을 통해 Windows 11 25H2(빌드 10.0.26200)에 대한 지원 및 감지가 추가되었습니다.
- 최상위 창과 포커스에 대한 다양한 접근성 개선 사항이 있습니다.
- 새로 고침 빈도 업데이트 처리가 개선되었습니다.
- Visual Studio 2026 사용 시 ARM64EC에 대한 실험적 지원이 추가되었습니다.
/arm64EC이 구성을 사용하려면CFLAGS에/arm64EC및/d2arm64ECMarkAllFuncsPatchable을 추가하고, Windows on ARM 머신의CXXFLAGS환경 변수에 평소와 같이 Qt를 구성 및 빌드하세요.
Linux
- Wayland 플러그인에는 서버 측 키 반복, 서버 측 장식 기본 설정,
xx-session-management-v1에 대한 실험적 지원 및 다양한 안정성 수정(팝업, 스크롤, 화면 밖 표면, 클립보드)이 추가되었습니다. - XCB용 레거시 X11 네이티브 페인팅 엔진(XRender)이 제거되었습니다. 이 엔진을 사용하려면 컴파일 시 CMake 옵션(
-xcb-native-painting)을 사용하여 활성화하고 런타임 시QT_XCB_NATIVE_PAINTING환경 변수를 사용하여 활성화해야 합니다. - 애플리케이션의 접근성 계층 구조 내에서 접근 가능한 개체를 검색하는 보다 효율적인 메커니즘을 제공하는 AT-SPI 컬렉션 인터페이스에 대한 지원을 추가하여 접근성이 향상되었습니다. 또한 이 인터페이스는 Orca 화면 리더에서 찾아보기 모드를 지원합니다.
- XKB: Qt::Key_Call / Qt::Key_Hangup 에 대한 키 매핑이 확장되었습니다.
macOS
- 샌드박스가 적용된 애플리케이션은 이제 애플리케이션 샌드박스 외부의 파일(보안 범위 리소스라고 함)에 읽기 및 쓰기 모두 액세스할 수 있습니다. 파일 대화상자 또는 이와 유사한 기본 메커니즘을 통해 사용자가 선택한 파일 또는 폴더는 애플리케이션과 기기를 다시 시작할 때에도 영구적으로 액세스하는 등 자동으로 투명하게 처리됩니다.
- 기본 NSScreen에 액세스하기 위한 QNativeInterface::QCocoaScreen 추가.
- CGImageRef와 QImage 간의 변환은 이제 QImage::Format_RGB30 및 HDR 콘텐츠에 중요한 부동 소수점 형식을 포함하여 더 광범위한 이미지 형식을 지원합니다.
- 이제 Apple 아이콘 엔진이 페인터의 레이아웃 방향을 존중하여 SF 심볼 아이콘 세트에서 사용 가능한 경우 RTL 전용 아이콘을 생성합니다.
- 이제 기본 열기/저장 패널을 통해 선택한 파일 경로가 NFC 정규화되어 파일 시스템이 이름을 NFC 형식으로 저장하는지 여부에 관계없이 일관된 파일 이름 비교를 보장합니다.
모바일 플랫폼
Android
Android용 Qt
- Qt Jenny 는 이제 Java 인터페이스 구현과 C++에서 Java 클래스 확장을 지원합니다.
- Play 스토어의 기능 제공 지원.
- 안드로이드 16 지원.
- Gradle 9.3.1 및 Android Gradle 플러그인 9.0.0으로 업데이트.
- JDK 21 LTS로 업데이트 및 JDK 17 LTS와의 호환성 향상.
Qt Quick 안드로이드용
- Java/Kotlin에서 QML 함수를 호출하기 위한 QtQuickView.invokeMethod()가 추가되었습니다.
- QML 뷰가 로드되기 전에 신호를 등록하는 기능이 지원됩니다.
iOS
- 플랫폼 테마에 파일 아이콘 지원이 추가되었습니다.
- 외부 파일 열기 요청에 대한 QFileOpenEvent 지원이 추가되었습니다.
- 샌드박스가 적용된 애플리케이션은 이제 애플리케이션 샌드박스 외부의 파일(소위 보안 범위 리소스라고 함)에 읽기 및 쓰기 모두 액세스할 수 있습니다. 파일 대화 상자 또는 이와 유사한 기본 메커니즘을 통해 사용자가 선택한 파일 또는 폴더는 애플리케이션 및 디바이스 재시작 시에도 영구적인 액세스를 포함하여 자동으로 투명하게 처리됩니다.
- 기본 저장 대화상자에 대한 지원이 추가되었습니다.
임베디드 플랫폼
Linux
- EGLFS/KMS는 이제 런타임에 디스플레이의 핫 플러그 및 핫 로드를 지원합니다(
QT_QPA_EGLFS_HOTPLUG_ENABLED환경 변수에 의해 보호됨). - 새로운 ConnMan 기반 QNetworkInformation 백엔드가 추가되었습니다.
- DirectFB: Qt::Key_Call 매핑이 추가되었습니다.
Boot to Qt
- 새로운 티어 2 플랫폼:
- NXP i.MX 8M Plus LDDPR4 EVK
- 토라덱스 i.MX 95 버딘
- 퀄컴 RB3 2세대 비전 키트
웹 플랫폼
WebAssembly
- Qt Positioning 에 지오로케이션 API용 백엔드가 추가되었습니다.
- 새로운
wasmdeployqt도구를 사용하여 동적으로 연결된 WebAssembly용 Qt XML 애플리케이션을 배포 및 제공하세요. 이 도구는 이전의preload_qt_plugins.py및preload_qml_imports.pyPython 스크립트를 대체합니다.
API 변경 사항 목록
이 페이지에는 Qt 6.11의 API 변경 사항에 대한 개요가 포함되어 있습니다:
알려진 문제
Qt 6.11의 알려진 문제에 대한 정보는 Qt 위키를 참조하십시오.
© 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.