이 페이지에서

Qt 6.7의 새로운 기능

Qt 6.7의 새로운 기능

Qt Core 모듈

  • QSpan 가 추가되었습니다. 이는 Qt에서 C++20 std::span을 재구현한 것입니다.
  • std::*_ordering 클래스의 C++17 호환 구현체인 ` Qt::strong_ordering`, ` Qt::weak_ordering` 및 ` Qt::partial_ordering ` 클래스가 추가되었습니다.
  • Qt 클래스에서 비교 연산자를 편리하게 구현할 수 있도록 헬퍼 매크로를 추가했습니다. 이 매크로는 C++20 빌드에서는 operator<=>()를 제공하며, C++17 빌드에서는 6가지 비교 연산자 모두를 대체하여 사용합니다.
  • QDate, QTime, QDateTime, QTimeZone 및 qfloat16 클래스에 이러한 헬퍼 매크로를 적용했습니다.
  • 새로운 클래스 QAtomicScopedValueRollback 를 추가했습니다.
  • Qt::Key_micro 를 추가하여, 잘못된 이름이 붙은 Key_mu를 향후 대체할 예정입니다. 이는 그리스 문자 뮤(U+03BC 또는 U+039C)가 아닌 마이크로 기호(U+00B5)입니다.
  • QLocale's name(), bcp47Name() 및 uiLanguages()는 이제 호출자가 이름 내 태그 사이에 사용할 구분 기호를 지정할 수 있게 되었습니다.
  • QLocale 이제 서식화된 날짜/시간의 시간대 부분을 (가능한 한) 현지화합니다.
  • 두 자리 연도의 날짜(및 날짜/시간) 구문 분석 시, 호출자가 해당 연도가 선택되는 세기를 제어할 수 있게 되었습니다.
  • QCalendar 이제 두 자리 연도 구문을 지원하기 위해 matchCenturyToWeekday()가 추가되었습니다.
  • QDateTime 이제 TransitionResolution 매개 변수를 받아 호출자가 시간대 전환이 해결되는 방식을 제어할 수 있습니다. 갭에 있는 날짜/시간의 기본 해상도는 이제 유효하지만, time() 및 date()는 요청된 값이 아닌 toMSecsSinceEpoch()가 보고하는 값과 일치합니다.

Qt D-Bus 모듈

  • 사용 중단된 <qdbusmacros.h> 헤더가 제거되었습니다. 대신 <qtdbusglobal.h>를 사용하십시오.
  • 새로운 함수 ` QDBusAbstractInterface::setInteractiveAuthorizationAllowed()`를 사용하면 비동기 호출에 대해 ` ALLOW_INTERACTIVE_AUTHORIZATION ` 플래그를 설정할 수 있습니다.

Qt Graphs 모듈

Qt Graphs3D

  • 데이터 API는 모든 데이터 항목을 힙 메모리에 생성할 필요가 없습니다.
  • 이미지에 렌더링하는 기능이 추가되었습니다.

Qt Graphs2D

  • 2D 그래프의 기술 미리 보기입니다.
  • 막대, 선 및 산점도에 대한 초기 지원이 포함되어 있습니다.

Qt GRPC 모듈

  • QtGRPC 호출 및 스트림의 동작을 사용자 정의하기 위해 인터셉터를 사용하는 기능이 추가되었습니다. 이제 QGrpcClientInterceptor를 상속하여 원하는 인터셉션 메서드를 재정의할 수 있습니다.
  • QGrpcServerStream, QGrpcClientStream 및 QGrpcBidirStream 클래스가 도입되었습니다. 이 클래스들은 각각 클라이언트, 서버 및 양방향 스트리밍 호출을 수행하는 데 사용됩니다.

참고: Qt GRPC 모듈은 기술 미리보기(Technology Preview) 단계에 있습니다.

Qt GUI 모듈

  • Windows 10 및 11, macOS, iOS, Android에서 네이티브 아이콘 라이브러리에 대한 액세스를 제공하는 QIconEngine 구현체가 추가되었습니다.
  • 자식 창이 추가되거나 제거될 때 창에 이를 알리기 위해 새로운 이벤트 유형인 ` QEvent::ChildWindowAdded ` 및 ` QEvent::ChildWindowRemoved`과 이에 대응하는 ` QChildWindowEvent ` 클래스가 추가되었습니다.
  • 모든 플랫폼에서 가변 애플리케이션 글꼴을 로드할 수 있도록 지원합니다(Windows에서는 DirectWrite 또는 FreeType 백엔드가 필요합니다).
  • QFont variable fonts 을 처리하기 위한 새로운 API가 추가되었습니다.
  • 새로운 ` QFont::Tag ` 유형은 새로운 가변 글꼴 지원 API와 Qt 6.6에서 예비 API로 도입되어 이제 최종 확정된 ` support for typographical features `와 함께 축을 지정하는 데 사용할 수 있습니다.

Qt Multimedia 모듈

  • FFmpeg 멀티미디어 백엔드는 이제 Windows에서 FFmpeg와 동적으로 링크됩니다. 사전 컴파일된 FFmpeg 바이너리는 온라인 설치 프로그램을 통해 제공됩니다. FFmpeg 백엔드를 사용하는 Windows 애플리케이션은 이제 windeployqt를 사용하여 설치 프로그램의 일부로 FFmpeg 바이너리를 번들링해야 합니다.
  • 새로운 ` MediaPlayer::autoPlay ` 및 ` Video::autoPlay ` 속성을 사용하면 미디어 소스가 설정되었을 때 자동으로 재생을 시작할 수 있습니다.
  • QCameraDevice 에는 새로운 correctionAngle 속성이 추가되었습니다. 이 속성은 카메라의 기본 방향에 비해 물리적으로 회전된 각도를 보정하는 데 필요한 회전 각도를 나타냅니다.

Qt Network 모듈

  • HTTP 헤더를 나타내기 위해 QHttpHeaders 클래스가 추가되었습니다.
  • QNetworkRequest 및 QNetworkAccessManager 을 사용하여 전송 타임아웃을 설정할 수 있도록 std::chrono 지원이 추가되었습니다.
  • QNetworkRequestFactory 클래스(기술 미리 보기)가 추가되었습니다. 이 클래스는 네트워크 요청을 생성하기 위한 편의 클래스입니다.
  • QRestAccessManager 및 QRestReply (기술 미리 보기)를 추가했습니다. 이 클래스들은 RESTful 사용 사례에 최적화된 편의 래퍼입니다.

Qt OPC UA 모듈

Qt Protobuf 모듈

  • QProtobufMessage 기반 클래스에 대한 JSON 직렬화 및 역직렬화 기능을 구현하는 새로운 직렬화기를 추가했습니다.
  • Qt Protobuf 생성기에서 '선택적' 필드에 대한 지원을 추가했습니다. 메시지 필드가 '선택적'으로 표시된 경우, 일반 필드 메서드 외에도 clear<fieldName> 및 has<fieldName> 메서드가 제공됩니다.
  • Qt Protobuf 생성기에 의해 생성된 열거형 필드는 이제 첫 글자의 대소문자를 그대로 유지합니다. 이전에는 생성기가 생성된 열거형 필드 이름을 모두 대문자로 변환했습니다.

참고: Qt Protobuf 모듈은 현재 기술 미리보기(Technology Preview) 단계에 있습니다.

Qt Qml 모듈

  • QML Language Server 에 새로운 기능이 추가되었습니다: 서식 지정, 의미론적 및 코드 스니펫 자동 완성, 사용처 이름 변경, QT_QML_GENERATE_QMLLS_INI를 통한 CMake에서 파일 생성 설정.
  • QML 파일의 번역 컨텍스트는 다음을 통해 설정할 수 있습니다. pragma Translator
  • 이제 값 유형에 대해 ` QML_CONSTRUCTIBLE_VALUE ` 및 ` QML_STRUCTURED_VALUE `을 선언하고 QML에서 해당 유형의 객체를 생성할 수 있습니다. 사실 Qt 6.5부터 이미 가능했으나, 이제 공식적으로 지원됩니다.

Qt Quick Compiler

  • 값 유형의 속성을 작성하는 바인딩 및 함수를 이제 C++로 컴파일할 수 있습니다.
  • 선택적 체이닝을 이제 C++로 컴파일할 수 있습니다.
  • for..in 반복문이 이제 C++로 컴파일될 수 있습니다

Qt Quick 모듈

  • 파일에서 데이터를 불러오기 위한 ` TextEdit.textDocument.source ` 속성과, 데이터를 쓰기 위한 ` save()` 및 ` saveAs()` 함수가 추가되었습니다. 이들은 텍스트 처리 시나리오에서 XMLHttpRequest를 대체하기 위한 것입니다.
  • 선택된 텍스트의 속성을 확인하고 수정할 수 있도록 TextEdit 및 TextArea 에 cursorSelection 속성이 추가되었습니다.
  • 이러한 기능을 시연하기 위해 텍스트 편집기 예제를 업데이트했습니다.
  • 매우 대용량의 텍스트를 렌더링할 때 더 나은 결과를 제공하는 새로운 텍스트 렌더러를 추가했습니다. renderType 을 Text.CurveRendering 으로 설정하여 이 렌더러를 선택할 수 있습니다.
  • 텍스트 클래스에 ` variable fonts`을 처리할 수 있는 새로운 API가 추가되었습니다.
  • 이제 Rectangle은 서로 다른 radii on each corner 을 가질 수 있습니다.
  • Qt Quick 씬에 QWindows를 임베딩하는 기능이 예비적으로 추가되었으며, Window의 시각적 부모를 설정할 수 있도록 Window에 parent 속성이 추가되었습니다.
  • Control 의 focusReason 및 focusPolicy 속성이 Item 로 이동되었습니다.
  • QQuickFramebufferObject 의 현대적인 대안으로 QQuickRhiItem 가 추가되었습니다. 이를 통해 Qt의 렌더링 하드웨어 인터페이스(예: OpenGL, Vulkan, Direct3D 또는 Metal)에서 지원하는 모든 하드웨어 가속 그래픽 API를 통해 3D 그래픽을 렌더링하는 사용자 정의 QQuickItem 객체를 생성할 수 있습니다.
  • QRhi 을 사용하는 새로운 QQuickRenderControl 예제가 추가되었으며, 이로 인해 완전한 이식성을 갖추고 지원되는 모든 3D API에서 작동합니다. 이 예제는 Qt Quick 콘텐츠를 크로스 플랫폼 방식으로 텍스처로 리디렉션하는 방법을 보여줍니다.

Qt Quick Controls 모듈

Qt Quick Shapes 모듈

  • Curve Renderer 와 관련 속성인 preferredRendererType 가 이제 공식적으로 지원되며, 더 이상 실험적인 기능으로 간주되지 않습니다.
  • 도형을 특성화하기 위한 pathHints 속성이 추가되었습니다. 이 속성은 렌더러가 경로의 처리 및 렌더링을 최적화하는 데 사용될 수 있습니다.
  • 이제 도형은 도형의 경계 사각형을 기반으로 암시적 크기를 가지며, 레이아웃 내에서 적절하게 배치됩니다. 항목에 암시적 크기와 다른 명시적 크기가 지정되었을 때 도형의 동작 방식을 수정하기 위해 fillMode, horizontalAlignment 및 verticalAlignment 속성이 추가되었습니다.
  • svgtoqml 도구가 기술 미리보기로 추가되었습니다. 이 도구는 SVG 파일을 QML 코드로 변환하는 데 사용할 수 있습니다. 현재 이 도구는 실험 단계로 간주되며, Qt SVG 이 지원하는 기능 중 일부만 지원합니다.

Qt Quick Timeline 모듈

  • QtQuick.Timeline.BlendTrees 하위 모듈은 여러 타임라인 애니메이션을 블렌딩할 수 있도록 하는 새로운 API를 추가합니다.

Qt Quick 3D 모듈

  • QQuick3DRenderExtension 는 애플리케이션 측 렌더링 확장을 구현하기 위한 새로운 클래스로, 이를 통해 사용자는 QtQuick3D 엔진에 수정 없이 QtQuick3D의 렌더링 파이프라인을 확장할 수 있게 되었습니다. QtQuick3D 에서 제공하는 새로운 세미 퍼블릭 API 및 Qt 렌더링 하드웨어 인터페이스(QRhi)와 함께, 이제 사용자 정의 렌더링 코드를 QtQuick3D 의 렌더링 파이프라인에 삽입하여 메인 렌더 패스의 일부로 렌더링하거나 독립형 렌더링 레코딩으로 렌더링할 수 있습니다. 독립형 렌더링 기록의 결과는 선행 확장 기능에 제공될 수 있으며, 이는 extensions 의 선언 순서에 따라 제어할 수 있습니다. 또한 독립형 렌더링 확장 기능은 텍스처 항목에 대한 텍스처 제공자로 노출될 수 있습니다. 즉, 그 결과는 QtQuick3D 의 Texture 유형을 사용하는 재료, 효과 등과 같은 다른 QtQuick3D 유형에서 사용할 수 있습니다.
  • QSSG 클래스 계열은 문서가 제공되며, 제한된 호환성을 보장하는 API로 제공됩니다. Qt Spatial Scene Graph 클래스는 QtQuick3D 의 내부 타입과 상호 작용할 수 있는 접근 방법과 유용한 헬퍼 함수를 제공합니다. QSSG 클래스는 크게 두 가지 그룹으로 나눌 수 있습니다. 첫 번째 그룹은 QRhi 를 통해 QtQuick3D 씬에 사용자 정의 렌더링을 수행하는 데 필요한 상태에 대한 액세스를 제공하는 반면, 두 번째 클래스 그룹은 QtQuick3D 의 렌더러블에 대한 액세스와, QtQuick3D 가 내부적으로 사용하는 것과 동일한 인프라를 활용하여 해당 렌더러블을 수정, 추출 또는 재렌더링할 수 있게 해주는 헬퍼 함수를 제공합니다.
  • CustomMaterial sourceAlphaBlend 및 속성이 새로 추가되었습니다. destinationAlphaBlend
  • Texture에 새로운 textureProvider 및 tilingModeDepth 속성이 추가되었습니다.
  • View3D explicitTextureWidth, 및 속성이 새로 추가되었습니다. explicitTextureHeight effectiveTextureSize

Qt Quick 3D Physics 모듈

Qt Serial Bus 모듈

  • QCanDbcFileParser 에 UTF-8 이외의 인코딩으로 DBC 파일을 파싱할 수 있는 메서드가 추가되었습니다.

Qt SQL 모듈

  • 더 이상 사용되지 않는 <qsql.h> 헤더가 제거되었습니다. 대신 <qtsqlglobal.h>를 사용하십시오.

Qt WebEngine 모듈

Qt Widgets 모듈

  • Qt의 렌더링 하드웨어 인터페이스(예: OpenGL, Vulkan, Direct3D 또는 Metal)에서 지원하는 모든 하드웨어 가속 그래픽 API를 통해 3D 그래픽을 렌더링하기 위한 QRhiWidget 클래스(기술 미리 보기)가 추가되었습니다.
  • QCheckBox 새로운 checkStateChanged 신호가 추가되어, 새로운 check 상태를 유형 안전성이 보장된 Qt::CheckState 열거형 값으로 발산합니다.
  • QDateTimeEdit 새로운 ` timeZone ` 속성이 추가되었습니다.
  • Windows 11 이상을 실행하는 시스템에서는 기본적으로 새로운 Windows 11 위젯 스타일이 사용됩니다. 이 스타일은 Windows 다크 모드를 지원합니다.

Qt SVG 모듈

  • SVG 1.1 표준의 일부 요소에 대한 지원이 추가되었습니다. 해당 요소는 Mask, Symbol, Marker, Pattern, Filter 및 Filter Primitives(feMerge, feColorMatrix, feGaussianBlur, feOffset, feComposite, feFlood)입니다.
  • 새로운 요소의 렌더링을 활성화하거나 비활성화하기 위한 ` QtSvg::Options ` 플래그가 추가되었습니다.
  • QSvgRenderer 및 QSvgWidget 에 대한 QtSvg::Options 의 세터와 게터가 추가되었습니다. 새로운 기능은 기본적으로 활성화되어 있습니다.

도구

Qt Widgets Designer

  • Qt Widgets Designer 이제 범위 지정 열거형 및 Qt for Python 을 지원하기 위해 .ui 파일에 완전한 정규화된 열거형 값을 기록합니다. 이러한 값을 읽는 기능은 6.6.1 및 6.5.4 버전으로 역포트되었습니다.

플랫폼 변경 사항

데스크톱 플랫폼

Windows

macOS

  • macOS 14가 이제 지원되는 빌드 및 대상 플랫폼입니다.

Linux의 Wayland 클라이언트

WebAssembly

  • 드롭(드래그 앤 드롭) 지원이 추가되었습니다. 이제 사용자가 애플리케이션 창에 콘텐츠를 놓으면 Qt가 드롭 이벤트를 전송합니다.
  • OpenGL ES 3 / WebGL2가 이제 기본값이며, OpenGL ES2 / WebGL 1로 폴백됩니다.
  • Emscripten 버전이 3.1.50으로 업데이트되었습니다.

모바일 플랫폼

Android

  • Android 플러그인의 Java 코드를 리팩토링하였으며, 주요 내용은 다음과 같습니다.
    • 아키텍처와 다양한 클래스 간의 관계(예: QtActivity, QtActivityLoader, QtActivityDelegate 간)를 단순화했습니다.
    • QtLoader 클래스를 public bindings 패키지에서 분리했습니다.
    • 리플렉션 사용을 제거했습니다.
  • Qt 및 기타 QPA와의 일관성을 유지하기 위해 Android용 자식 창에 대한 예비 지원을 추가했습니다. 그 결과, 현재 QScreen::grabWindow()은 일시적으로 지원되지 않습니다.
  • 지원되는 최대 플랫폼 버전을 Android 14로 설정하고, 기본 플랫폼 SDK 및 대상 레벨을 API 34로 설정했습니다.
  • 지원되는 Android NDK 버전을 r26b(26.1.10909125)로, JDK를 17로 설정했습니다.
  • Mobile 카테고리의 예제를 iOS와 일치시켰습니다.
  • QScreen 의 Android 디스플레이 ID에 대한 액세스를 제공하는 QNativeInterface::QAndroidScreen 를 추가했습니다.
  • 테스트 충돌 보고서를 깔끔하게 출력하기 위해 androidtestrunner와 함께 ndk-stack을 사용할 수 있도록 지원이 추가되었습니다.
  • Android 패키지의 배포 유형을 명시적으로 설정할 수 있는 CMake 변수 QT_ANDROID_DEPLOYMENT_TYPE을 추가했습니다.
  • Qt for Android 플랫폼 문서를 전반적으로 재작성하고 업데이트했습니다.
  • Android 프로젝트에서 Qt의 강력한 기능을 활용할 수 있는 기능을 도입했습니다:

iOS

  • iOS 17이 이제 지원되는 대상 플랫폼입니다.

임베디드 플랫폼

Boot to Qt

  • Yocto 4.3(Nanbield)에 대한 지원이 추가되었습니다.
  • ARM Linux 개발 호스트에 대한 지원이 추가되었습니다.
  • 타겟 이미지에 Squish 지원이 포함되었습니다.
  • 대상 하드웨어 지원 수준이 업데이트되어 Tier 3에 새로 지원되는 보드가 추가되었습니다:
    • Amazon AWS EC2 ARM64
    • NVIDIA Jetson AGX Orin 개발자 키트
    • NXP i.MX8M Nano LPDDR4 EVK (DDR4 EVK 모델 대체)
    • Qualcomm Robotics RB5 개발 키트
    • TI SK-AM69

VxWorks

  • VxWorks 23.09 지원을 기술 미리보기(Technology Preview)로 추가했습니다.

빌드 시스템 변경 사항

  • Qt C++ 헤더 파일에 이제 IWYU 도구를 위한 메타데이터가 포함됩니다.
  • CMake: 이제 DEPLOY_TOOL_OPTIONS를 설정하여 qt_generate_deploy_app_script(), qt_deploy_runtime_dependencies()에서 *deployqt 도구의 인수를 조정할 수 있습니다.
  • CMake: qt_add_library()가 이제 BUILD_SHARED_LIBS 변수의 값을 고려합니다. 이 변수가 정의되어 있는 경우, 라이브러리 타깃을 추가할 때 qt_add_library()의 라이브러리 유형 감지 로직보다 우선 순위가 높습니다.
  • CMake: qt_standard_project_setup()을 통해 이제 애플리케이션의 기본 UI 언어와 UI가 번역되는 언어를 설정할 수 있습니다. 이 설정은 qt_add_translations() 호출에 반영되어 지정된 언어에 맞는 .ts 및 .qm 파일을 생성하며, 기본 언어에 대해서는 '복수형 전용' .ts 파일을 생성합니다.
  • CMake: 이제 qt_add_translations()에 여러 타깃을 전달하여 해당 타깃에서 번역을 추출할 수 있습니다. 또는 qt_add_translations()가 프로젝트의 모든 타깃을 수집하도록 할 수도 있습니다(새로운 qt_collect_translation_source_targets() 함수를 통해 수행됨). 이때 디렉터리 또는 타깃 수준에서 원치 않는 타깃을 제외할 수 있는 옵션이 제공됩니다.
  • CMake: qt_add_translations()가 기술 미리 보기 단계에서 제외되었습니다.

WebOS

  • Qt 6.7은 LG webOS OSE 2.25.0(Qt for webOS)에서 작동하는 것으로 확인되었습니다.

API 변경 사항 목록

이 페이지에는 Qt 6.7의 API 변경 사항에 대한 개요가 포함되어 있습니다:

© 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.