Qt 5.6 的新功能

Qt 5.6 是 LTS (长期支持) 发行。

新模块

  • Qt Quick Controls 2
    • Included as a technology preview.
    • Provides lightweight QML types for creating performant user interfaces for embedded and mobile devices.
  • Qt Serial Bus
    • Included as a technology preview.
    • Provides a framework for accessing serial bus backends in general, and implementations for Controller Area Network (CAN) bus and Modbus.
  • Qt Compositor (Qt Wayland)
    • Included as a technology preview.
    • Provides a framework to develop Wayland compositor.
  • Qt WebEngine Core

Qt 5.6 中的新特征

Qt 3D

  • New buffer and attribute API.
  • 支持 OpenGL instanced rendering where supported.
  • 支持 OpenGL primitive restart .
  • Support for clip planes, stencil operations, and many more OpenGL features.
  • Support for easily generating buffer data from C++ and QML (using JavaScript typed arrays).
  • qgltf tool to compile scenes into glTF .
  • Support for loading glTF scenes via SceneLoader .
  • Support for controlling multi-sampling with Scene3D .
  • More standard materials: per-vertex colors and Gooch shading.
  • New APIs for mouse input and collision detection.
  • New Logic aspect to have QML/C++ code executed synchronously with the Qt 3D aspect engine. Useful for prototyping future Qt 3D features.

Qt Core 模块

Qt Canvas3D 模块

  • Support for using Qt Quick items as textures.
  • Support for rendering directly to Qt Quick scene background or foreground.

Qt GUI 模块

  • Improved cross-platform OpenGL ES 3.0 and 3.1 support to enable developing mobile/embedded applications utilizing GLES3 features.
  • Improved cross-platform high-dpi support.
  • Raster engine support for rendering internally with 16bits-per-color.
  • QImageReader now exports gamma values and other meta data for some image formats.

Qt Multimedia 模块

  • New Playlist QML type.
  • New audio role API for the media player (C++ and QML).
  • Support for camera focus and video probe on WinRT .
  • New functions in QML AudioEngine to support dynamic object creation.

Qt NFC 模块

  • Added support for Android.

Qt Network 模块

QPA (Qt 平台抽象)

  • Optional support for using FreeType on macOS.
  • Added support for NVIDIA Jetson TK1 Pro boards running Vibrante Linux via a new eglfs backend utilizing DRM, EGLDevice, and EGLStream.
  • Added support for Intel Atom-based NUCs.
  • Added support for WEC2013.
  • Windows 10 fully supported (classic and WinRT app)
  • Windows Store apps are now composited inside a XAML layer, allowing better integration with the native UI layer.
  • 使用 libinput , if available, as the default on eglfs and linuxfb .

Qt Positioning 模块

  • Added support for macOS.
  • Added support for GPS receivers exposed as a serial port on Windows desktop (all versions).
  • Removed libgeoclue dependency for the GeoClue backend.

Qt QML 模块

  • Support for writing JavaScript function names to Linux's perf output.
  • Reduced overall memory consumption.

Qt Testlib 模块

  • More stable input event handling.

Qt WebView 模块

Qt WebEngine 模块

  • Based on Chromium 45.
  • Support for pepper plugins including Flash.
  • Support for unbundling and linking with system libraries on Linux.
  • Support for following global Qt proxy settings.
  • More WebActions from QtWebKit and WebAction API in QML.
  • New QtWebEngineCore module for shared low-level API.
  • New core API for custom URL schemes.
  • New core API for intercepting and blocking network requests.
  • New core API for tracking or blocking cookies.

Qt Widgets 模块

  • Allow programmatic resizing of dock widgets.
  • Allow dropping dock widgets into floating docks.
  • Allow the user to re-arrange tabbed docks.
  • Allow horizontal scrolling using a mouse wheel in QListView .
  • 支持 QOpenGLWidget and QQuickWidget on WinRT .

移除功能

弃用功能

  • Enginio
  • Qt Script

These modules are still included in Qt 5.6, but are considered for removal in future releases.

API 变化列表

以下页面包含 Qt 5.6 中的 API 变化列表:

其它 Qt 5 发行的补充