发布于 2016-09-06 00:21:27 | 345 次阅读 | 评论: 0 | 来源: 网友投递
Qt 跨平台的C++图形用户界面应用程序框架
Qt是一个1991年由奇趣科技开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,易于扩展,允许组件编程。
Qt 5.8 Alpha 版发布了,
一些新特性:
Qt Core
Added at(), operator[], mid(), right() and left() to QLatin1String
Qt GUI
QTouchEvent now has uniqueId and rotation
Support for dithering when converting to all QImage formats
Previously private QOpenGLTextureBlitter API is made public, to help QtWayland in particular
Added capHeight() to QFontMetrics, QFontMetricsF, and QRawFont
Selection handles on Android, with edit menu for copy/paste)
Qt Quick
Refactored the Qt Quick scene graph to remove its OpenGL dependency and make it possible to create rendering backends based on other graphics APIs, such as Vulkan or Direct3D.
Integrated the software renderer for the Qt Quick scene graph as a proper backend for the scene graph (previously known as the Qt Quick 2D Renderer.)
Implemented support for partial updates in the software backend for the scene graph (2D Renderer) to prevent expensive fullscreen updates when only small areas are changing.
Added an experimental Direct3D 12 backend
Implemented caching of code and data structures generated from .qml/.js files to disk to reduce start-up time and memory consumption. The resulting .qmlc and .jsc cache files are memory mapped.
Cleaned up touch and mouse event delivery and added a new internal class QQuickPointerEvent which is used for that purpose. This is the foundation for further improvements with regards to input event handling, but does not affect any code using Qt Quick yet.
Qt Quick Controls 2
Added new QML types: Dialog, DialogButtonBox, MenuSeparator, RoundButton, and ToolSeparator
Added ripple effects to the Material style
Added hover effects to the Material and Universal styles
Added a 'System' theme to the Material and Universal styles
Added new experimental "platform" QML types: MenuBar, Menu, SystemTrayIcon, ColorDialog, FontDialog, MessageDialog, FileDialog and FolderDialog
Qt Widgets
Qt WebEngine
Based on Chromium 51+ (probably 53)
Windows: Requires MSVC 2015 Update 2 or later
view-source: scheme is supported
Spellchecking with custom .bdic files
Tooltips (HTML5 global tile attribute) are shown
User scripts now support metadata (@include, @exclude, @match)
Qt WebEngine (QML) allows defining custom dialogs / context menu's
Qt WebEngine (QML) on eglfs uses builtin dialogs based on Qt Quick Controls 2
Added setting to enable printing of CSS backgrounds
Support for printing
Qt Bluetooth
Bluetooth Low Energy Peripheral support on OS X, iOS & WinRT
Qt Multimedia
Added QAudio::convertVolume() (and matching QML API) function to convert an audio volume from one scale to another, e.g. logarithmic to linear.
VideoOutput (QML) now supports rendering YUV 4:2:2 (YUYV, UYVY) video frames.
Qt Network
Support for TLS PSK ciphersuites on server side
Support for configurable diffie hellman parameters
Support for HTTP/2 in Network Access Manager
Qt WebSockets
Support for TLS PSK ciphersuites on client and server side
Qt Charts
Candlestick chart type added.
Qt 3D
Main focus on maturation (improving performance, bug fixing and improving test coverage)
Paint to texture using QPainter from Weiland
Optional support for issuing commands to Qt3D aspects (e.g. from profiler)
(Screenshot framegraph node STILL UNDER REVIEW)
Embedded platforms
Enhanced multi-screen capabilities and configurability with eglfs when running on KMS/DRM, both with GBM and EGLDevice/Stream
Added support for 90 or 180 degrees rotation of software-rendered content (QWidget) in eglfs
下载地址:http://download.qt.io/development_releases/qt/5.8/