Qt 6.0 的新功能

Qt 6 中构建系统的变化

从源代码构建 Qt 现在要求 CMake 和 Ninja。见 Qt 6 中构建系统的变化 for more details on this and other changes in configure.

支持模块的变化

Qt 6.0 比 Qt 5 更精简且某些模块 Qt 6.0 不再默认安装。由于 Qt 是模块化结构,新模块或之前的 Qt 5 模块可能出现在 Qt 6 未来发行中。更多信息,请拜访 所有模块 页面。

Qt 模块的变化 has a list of API changes in Qt 6.0.

Qt 6.0 中的新模块

以下是 Qt 6.0 中的新模块。

Qt 6.0 中移除的模块

以下是不在 Qt 6.0 中的 Qt 5 模块。在未来发行的 Qt 6 中可能重新引入它们。

模块 qmake 注释
Qt Android Extras androidextras
Qt Bluetooth bluetooth
Qt Charts charts
Qt Data Visualization datavisualization
Qt Graphical Effects 仅 QML 类型
Qt Location location
Qt Mac Extras macextras
Qt Multimedia multimedia
Qt Multimedia Widgets multimediawidgets
Qt NFC nfc
Qt Positioning positioning
Qt Purchasing purchasing
Qt Quick Extras 合并进 Qt Quick Controls
Qt Remote Objects remoteobjects
Qt Script qtscript
Qt SCXML scxml
Qt Script Tools scripttools
Qt Sensors sensors
Qt Serial Bus serialbus
Qt Serial Port serialport
Qt Speech texttospeech
Qt WebChannel webchannel
Qt WebEngine webenginecore
Qt WebSockets websockets
Qt WebView webview
Qt Windows Extras winextras
Qt X11 Extras x11extras
Qt XML Patterns xmlpatterns

新的类和函数

本章节提供 Qt 6 中引入的所有新类和函数的综合列表。

新名称空间

新类

新成员函数

Class QAbstractItemModel :

virtual bool clearItemData (const QModelIndex & index )
virtual void multiData (const QModelIndex & index , QModelRoleDataSpan roleDataSpan ) const

Class QAbstractProxyModel :

virtual bool clearItemData (const QModelIndex & index ) override

Class QBitArray :

quint32 toUInt32 (QSysInfo::Endian endianness , bool * ok ) const

Class QByteArray :

int compare (QByteArrayView bv , Qt::CaseSensitivity cs ) const
bool contains (QByteArrayView bv ) const
qsizetype count (QByteArrayView bv ) const
bool endsWith (QByteArrayView bv ) const
QByteArray first (qsizetype n ) const
qsizetype indexOf (QByteArrayView bv , qsizetype from ) const
QByteArray & insert (qsizetype i , QByteArrayView data )
QByteArray last (qsizetype n ) const
qsizetype lastIndexOf (QByteArrayView bv , qsizetype from ) const
void push_back (QByteArrayView str )
void push_front (QByteArrayView str )
QByteArray & replace (QByteArrayView before , QByteArrayView after )
QByteArray sliced (qsizetype pos , qsizetype n ) const
QByteArray sliced (qsizetype pos ) const
bool startsWith (QByteArrayView bv ) const

Class QChar :

QChar fromUcs2 (char16_t c )
R fromUcs4 (char32_t c )

Class QDate :

QDate fromString (QStringView string , Qt::DateFormat format )
QDate fromString (QStringView string , QStringView format , QCalendar cal )
QDate fromString (const QString & string , QStringView format , QCalendar cal )

Class QDataStream :

QDataStream & operator<< (char16_t c )
QDataStream & operator<< (char32_t c )
QDataStreamIfHasOStreamOperators<T1, T2> operator<< (QDataStream & out , const std::pair<T1, T2> & pair )
QDataStream & operator>> (char16_t & c )
QDataStream & operator>> (char32_t & c )
QDataStreamIfHasIStreamOperators<T1, T2> operator>> (QDataStream & in , std::pair<T1, T2> & pair )

Class QDateTime :

QDateTime fromString (QStringView string , Qt::DateFormat format )
QDateTime fromString (QStringView string , QStringView format , QCalendar cal )
QDateTime fromString (const QString & string , QStringView format , QCalendar cal )

Class QDebug :

QDebug & operator<< (const char16_t * t )
QDebug & operator<< (QUtf8StringView s )
QDebug & operator<< (QByteArrayView t )
QString toString (T && object )

Class QDir :

void addSearchPath (const QString & prefix , const std::filesystem::path & path )
std::filesystem::path filesystemAbsolutePath () const
std::filesystem::path filesystemCanonicalPath () const
std::filesystem::path filesystemPath () const
void setPath (const std::filesystem::path & path )

Class QEvent :

virtual QEvent * clone () const
bool isInputEvent () const
bool isPointerEvent () const
bool isSinglePointEvent () const

Class QFile :

bool copy (const std::filesystem::path & newName )
std::filesystem::path filesystemFileName () const
bool link (const std::filesystem::path & newName )
QFileDevice::Permissions permissions (const std::filesystem::path & filename )
bool rename (const std::filesystem::path & newName )
void setFileName (const std::filesystem::path & name )
bool setPermissions (const std::filesystem::path & filename , QFileDevice::Permissions permissionSpec )

Class QExplicitlySharedDataPointer :

T * get () const
void reset (T * ptr )

Class QFileInfo :

std::filesystem::path filesystemAbsoluteFilePath () const
std::filesystem::path filesystemAbsolutePath () const
std::filesystem::path filesystemCanonicalFilePath () const
std::filesystem::path filesystemCanonicalPath () const
std::filesystem::path filesystemFilePath () const
std::filesystem::path filesystemPath () const
std::filesystem::path filesystemSymLinkTarget () const
void setFile (const std::filesystem::path & file )
void stat ()

Class QFuture :

bool isSuspended () const
bool isSuspending () const
bool isValid () const
QFuture<T> onCanceled (Function && handler )
QFuture<T> onFailed (Function && handler )
void setSuspended (bool suspend )
void suspend ()
T takeResult ()
QFuture<ResultType<Function> > then (Function && function )
QFuture<ResultType<Function> > then (QtFuture::Launch policy , Function && function )
QFuture<ResultType<Function> > then (QThreadPool * pool , Function && function )
void toggleSuspended ()

Class QFutureWatcher :

bool isSuspended () const
bool isSuspending () const
void setSuspended (bool suspend )
void suspend ()
void suspended ()
void suspending ()
void toggleSuspended ()

Class QHash :

size_t qHash (char8_t key , size_t seed )
size_t qHash (char16_t key , size_t seed )
size_t qHash (char32_t key , size_t seed )
size_t qHash (wchar_t key , size_t seed )
size_t qHash (const QByteArrayView & key , size_t seed )
size_t qHash (std::nullptr_t key , size_t seed )
size_t qHash (QPoint key , size_t seed )
size_t qHash (const QTypeRevision & key , size_t seed )
size_t qHashMulti (size_t seed , const T &... args )
size_t qHashMultiCommutative (size_t seed , const T &... args )

Class QIODevice :

virtual qint64 skipData (qint64 maxSize )

Class QJsonValue :

qint64 toInteger (qint64 defaultValue ) const

Class QLatin1String :

QLatin1String first (qsizetype n ) const
QLatin1String last (qsizetype n ) const
QLatin1String sliced (qsizetype pos ) const
QLatin1String sliced (qsizetype pos , qsizetype n ) const
QString toString () const

Class QLibraryInfo :

QString path (QLibraryInfo::LibraryPath p )

Class QList :

void append (QList<T> && value )
QList<T> first (qsizetype n ) const
QList<T> last (qsizetype n ) const
QList<T> operator+ (QList<T> && other ) const
QList<T> & operator+= (QList<T> && other )
QList<T> & operator<< (QList<T> && other )
QList<T> sliced (qsizetype pos , qsizetype n ) const
QList<T> sliced (qsizetype pos ) const

Class QLocale :

QString quoteString (QStringView str , QLocale::QuotationStyle style ) const

Class QMap :

QMap::iterator erase (QMap::const_iterator first , QMap::const_iterator last )

Class QMargins :

QMargins operator| (const QMargins & m1 , const QMargins & m2 )

Class QMarginsF :

QMarginsF operator| (const QMarginsF & m1 , const QMarginsF & m2 )

Class QMetaProperty :

QUntypedBindable bindable (QObject * object ) const
bool isBindable () const
QMetaType metaType () const
int typeId () const

Class QMetaMethod :

QMetaType parameterMetaType (int index ) const
QByteArray parameterTypeName (int index ) const
int relativeMethodIndex () const
QMetaType returnMetaType () const

Class QMetaType :

qsizetype alignOf () const
QPartialOrdering compare (const void * lhs , const void * rhs ) const
bool 等于 (const void * lhs , const void * rhs ) const
bool hasRegisteredDebugStreamOperator () const
bool hasRegisteredMutableViewFunction ()
bool registerMutableView (MemberFunction function )
bool registerMutableView (MemberFunctionOk function )
bool registerMutableView (UnaryFunction function )
bool view (QMetaType fromType , void * from , QMetaType toType , void * to )

Class QMetaSequence :

QMetaSequence fromContainer ()

Class QModelIndex :

void multiData (QModelRoleDataSpan roleDataSpan ) const

Class QMultiMap :

QMultiMap::iterator erase (QMultiMap::const_iterator first , QMultiMap::const_iterator last )

Class QMultiHash :

QMultiHash<Key, T> & unite (const QHash<Key, T> & other )

Class QPersistentModelIndex :

void multiData (QModelRoleDataSpan roleDataSpan ) const

Class QPointer :

T * get () const

Class QProcess :

std::function<void ()> childProcessModifier () const
void setChildProcessModifier (const std::function<void ()> & modifier )
void startCommand (const QString & command , QIODeviceBase::OpenMode mode )

Class QRect :

QRect span (const QPoint & p1 , const QPoint & p2 )

Class QRegularExpression :

QRegularExpression fromWildcard (QStringView pattern , Qt::CaseSensitivity cs , QRegularExpression::WildcardConversionOptions options )
QRegularExpressionMatchIterator globalMatch (QStringView subjectView , qsizetype offset , QRegularExpression::MatchType matchType , QRegularExpression::MatchOptions matchOptions ) const
QRegularExpressionMatch match (QStringView subjectView , qsizetype offset , QRegularExpression::MatchType matchType , QRegularExpression::MatchOptions matchOptions ) const

Class QSharedDataPointer :

T * get ()
const T * get () const
void reset (T * ptr )
T * take ()

Class QSortFilterProxyModel :


Class QString :

qsizetype count (QStringView str , Qt::CaseSensitivity cs ) const
QString first (qsizetype n ) const
QString fromLatin1 (QByteArrayView str )
QString fromLocal8Bit (QByteArrayView str )
QString fromUtf8 (QByteArrayView str )
QString fromUtf8 (const char8_t * str , qsizetype size )
QString & insert (qsizetype position , QStringView str )
QString last (qsizetype n ) const
int localeAwareCompare (QStringView other ) const
int localeAwareCompare (QStringView s1 , QStringView s2 )
QString & operator+= (QStringView str )
QString & prepend (QStringView str )
QString sliced (qsizetype pos , qsizetype n ) const
QString sliced (qsizetype pos ) const

Class QStringListModel :

virtual bool clearItemData (const QModelIndex & index ) override

Class QStringTokenizer :

decltype(QtPrivate::Tok::TokenizerResult<Haystack, Needle>({std::forward<Haystack>(h), std::forward<Needle>(n), flags...})) qTokenize (Haystack && haystack , Needle && needle , Flags... flags )

Class QStringView :

QStringView::const_pointer constData () const
qsizetype count (QChar ch , Qt::CaseSensitivity cs ) const
qsizetype count (QStringView str , Qt::CaseSensitivity cs ) const
QStringView first (qsizetype n ) const
QStringView last (qsizetype n ) const
QStringView sliced (qsizetype pos , qsizetype n ) const
QStringView sliced (qsizetype pos ) const
QList<QStringView> split (const QRegularExpression & re , Qt::SplitBehavior behavior ) const
CFStringRef toCFString () const
double toDouble (bool * ok ) const
float toFloat (bool * ok ) const
int toInt (bool * ok , int base ) const
long toLong (bool * ok , int base ) const
qlonglong toLongLong (bool * ok , int base ) const
NSString * toNSString () const
short toShort (bool * ok , int base ) const
uint toUInt (bool * ok , int base ) const
ulong toULong (bool * ok , int base ) const
qulonglong toULongLong (bool * ok , int base ) const
ushort toUShort (bool * ok , int base ) const

Class QThreadPool :

bool contains (const QThread * thread ) const

Class QTime :

QTime fromString (QStringView string , Qt::DateFormat format )
QTime fromString (QStringView string , QStringView format )
QTime fromString (const QString & string , QStringView format )

Class QTypeRevision :

QDataStream & operator<< (QDataStream & out , const QTypeRevision & revision )
QDataStream & operator>> (QDataStream & in , QTypeRevision & revision )

Class QUnhandledException :

std::exception_ptr exception () const
void swap (QUnhandledException & other )

Class QVariant :

bool canConvert (QMetaType type ) const
QPartialOrdering compare (const QVariant & lhs , const QVariant & rhs )
bool convert (QMetaType targetType )
QMetaType metaType () const

Class QVarLengthArray :

QVarLengthArray<T, Prealloc> & operator= (QVarLengthArray<T, Prealloc> && other )

Class QAction :

QList<QObject *> associatedObjects () const

Class QIcon :

QPixmap pixmap (const QSize & size , qreal devicePixelRatio , QIcon::Mode mode , QIcon::State state ) const

Class QImage :

QImage fromHBITMAP (HBITMAP hbitmap )
QImage fromHICON (HICON icon )
void mirror (bool horizontal , bool vertical )
void rgbSwap ()
HBITMAP toHBITMAP () const
HICON toHICON (const QImage & mask ) const

Class QImageIOHandler :

bool allocateImage (QSize size , QImage::Format format , QImage * image )

Class QImageReader :

int allocationLimit ()
void setAllocationLimit (int mbLimit )

Class QInputEvent :

const QInputDevice * device () const

Class QKeyEvent :

QKeyCombination keyCombination () const

Class QPagedPaintDevice :

QPageRanges pageRanges () const
virtual void setPageRanges (const QPageRanges & ranges )

Class QRegion :

QRegion fromHRGN (HRGN hrgn )
HRGN toHRGN () const

Class QShortcut :

QList<QKeySequence> keys () const
void setKeys (QKeySequence::StandardKey key )
void setKeys (const QList<QKeySequence> & keys )

Class QStandardItem :

virtual void multiData (QModelRoleDataSpan roleDataSpan ) const

Class QSurfaceFormat :

void setColorSpace (const QColorSpace & colorSpace )

Class QTextCharFormat :

qreal baselineOffset () const
void setBaselineOffset (qreal baseline )
void setSubScriptBaseline (qreal baseline )
void setSuperScriptBaseline (qreal baseline )
qreal subScriptBaseline () const
qreal superScriptBaseline () const

Class QTextDocument :

qreal baselineOffset () const
void setBaselineOffset (qreal baseline )
void setSubScriptBaseline (qreal baseline )
void setSuperScriptBaseline (qreal baseline )
qreal subScriptBaseline () const
qreal superScriptBaseline () const

Class QWindow :

QPointF mapFromGlobal (const QPointF & pos ) const
QPointF mapToGlobal (const QPointF & pos ) const
virtual void paintEvent (QPaintEvent * ev )

Class QSslConfiguration :

bool handshakeMustInterruptOnError () const
bool missingCertificateIsFatal () const
void setCiphers (const QString & ciphers )
void setHandshakeMustInterruptOnError (bool interrupt )
void setMissingCertificateIsFatal (bool cannotRecover )

Class QSslSocket :


Class QQmlApplicationEngine :

void setExtraFileSelectors (const QStringList & extraFileSelectors )

Class QSGMetalTexture :

QSGTexture * fromNative (int texture , QQuickWindow * window , const QSize & size , QQuickWindow::CreateTextureOptions options )

Class QSGD3D11Texture :

QSGTexture * fromNative (void * texture , QQuickWindow * window , const QSize & size , QQuickWindow::CreateTextureOptions options )

Class QSGOpenGLTexture :

QSGTexture * fromNative (GLuint textureId , QQuickWindow * window , const QSize & size , QQuickWindow::CreateTextureOptions options )

Class QSGVulkanTexture :

QSGTexture * fromNative (VkImage image , VkImageLayout layout , QQuickWindow * window , const QSize & size , QQuickWindow::CreateTextureOptions options )

Class QQuickItem :

virtual void geometryChange (const QRectF & newGeometry , const QRectF & oldGeometry )

Class QQuickRenderControl :

void beginFrame ()
void endFrame ()
bool initialize ()
int samples () const
void setSamples (int sampleCount )
QQuickWindow * window () const

Class QQuickWindow :

void afterFrameEnd ()
void beforeFrameBegin ()
QSGRendererInterface::GraphicsApi graphicsApi ()
QQuickGraphicsConfiguration graphicsConfiguration () const
QQuickGraphicsDevice graphicsDevice () const
QQuickRenderTarget renderTarget () const
void setGraphicsConfiguration (const QQuickGraphicsConfiguration & config )
void setGraphicsDevice (const QQuickGraphicsDevice & device )
void setRenderTarget (const QQuickRenderTarget & target )

Class QSGRenderNode :

virtual void prepare ()

Class QSqlDriver :

virtual int maximumIdentifierLength (QSqlDriver::IdentifierType type ) const

Class QSqlQuery :

QVariantList boundValues () const

Class QAbstractItemView :

virtual void initViewItemOption (QStyleOptionViewItem * option ) const
virtual QAbstractItemDelegate * itemDelegateForIndex (const QModelIndex & index ) const

Class QGraphicsLayoutItem :

virtual bool isEmpty () const

Class QHeaderView :

virtual void initStyleOptionForIndex (QStyleOptionHeader * option , int logicalIndex ) const

Class QLabel :

QPicture picture () const

Class QWidget :

QPointF mapFrom (const QWidget * parent , const QPointF & pos ) const
QPointF mapFromGlobal (const QPointF & pos ) const
QPointF mapFromParent (const QPointF & pos ) const
QPointF mapTo (const QWidget * parent , const QPointF & pos ) const
QPointF mapToGlobal (const QPointF & pos ) const
QPointF mapToParent (const QPointF & pos ) const

名称空间中的新函数

void resetOpenGLState ()
QTaskBuilder<Task> task (Task && task )

新全局函数

long double qDegreesToRadians (long double degrees )
long double qRadiansToDegrees (long double radians )

新宏

新枚举类型

enum WildcardConversionOption { DefaultWildcardConversion, UnanchoredWildcardConversion }
enum class AlertLevel { Warning, Fatal, Unknown }
enum class AlertType { CloseNotify, UnexpectedMessage, BadRecordMac, RecordOverflow, DecompressionFailure, …, UnknownAlertMessage }
enum class Launch { Sync, Async, Inherit }

新类型别名

新特性

新的变量

新 QML 类型

新 QML 特性