The Qt 5 module is divided into two parts: Essentials Modules and Add-on Modules. The former is the base module, which is available on all platforms, and the latter is an extension module built on the basis of the base module, which can be introduced as appropriate on the platform that can run Qt.
The Qt base module is divided into the following:
- QtCore, which provides core non-GUI functionality, requires this module for all modules. The module's classes include animation frames, timers, individual container classes, time-date classes, events, IO, JSON, plug-in mechanisms, smart pointers, graphs (rectangles, paths, and so on), threads, XML, and so on. All of these classes can be introduced through the <QtCore> header file.
- The Qt GUIprovides basic functionality for GUI programs, including integration with windowing systems, event handling, OpenGL and OpenGL ES integration, 2D images, fonts, drag-and-drop, and more. These classes are typically used internally by the Qt user interface class and can of course be used to access the underlying OpenGL ES image API. The Qt Gui module provides the common functionality required by all graphical user interface programs.
- Qt Multimediaprovides video, audio, radio, and camera functions. These classes can be introduced through <QtMultimedia>, and QT + = Multimedia will need to be added to the pro file.
- QtNetwork, which provides cross-platform networking capabilities. These classes can be introduced through <QtNetwork>, and the QT + = network needs to be added to the pro file.
- Qt Qml, which provides the C + + API for Qml (a scripting language that also provides an interactive mechanism for JavaScript). These classes can be introduced through <QtQml>, and QT + = QML will need to be added to the pro file.
- qt Quick, which allows the embedding of QT Quick in the qt/c++ program (a highly animated, QT-based user interface for mobile platform development). These classes can be introduced through <QtQuick>, and QT + = Quick is added to the pro file.
- Qt SQL, which allows access to the database using SQL. These classes can be introduced through <QtSql>, and QT + = SQL needs to be added to the pro file.
- qt Test, which provides unit testing capabilities for QT programs. These classes can be introduced through <QtTest>, and QT + = Testlib will need to be added to the pro file.
- qt Webkit, based on the implementation of WEBKIT2 and a new set of QML APIs (QT 4.8, incidentally, comes with Qtwebkit 2.2).
The Qt extension module has more options:
- qt 3D, which provides declarative syntax, allows simple embedding of 3D images in QT programs. QT 3D adds 3D content rendering to Qt Quick. Qt 3D provides QML and C + + two sets of APIs for developing 3D programs.
- Qt bluetooth, which provides C + + and QML APIs for accessing Bluetooth wireless devices.
- Qt Contacts, which is used to access the C + + and QML APIs of the Address Book or contact database.
- Qt Concurrent, which encapsulates the class library of the underlying threading technology, facilitates the development of multithreaded programs.
- Qt D-bus, a class library that is used only by Unix platforms for inter-process interaction using the D-bus protocol.
- Qt Graphical Effectsprovides a range of classes for achieving image effects, such as Blur, sharpen, and more.
- Qt Image Formats, a series of plugins that support image formats, including TIFF, MNG, TGA, and WBMP.
- Qt JS Backend, the module does not have a public API, is a porting of the V8 JavaScript engine. This module is intended for use within the QTQML module only.
- Qtlocation, which provides QML and C + + APIs for positioning mechanisms, maps and navigation techniques, position search, and more.
- qt OpenGL, which facilitates the use of OpenGL in QT applications. This module is only for the convenience of porting the program from QT 4 to QT 5, and if you need to use OpenGL-related technology in the new QT 5 program, you need to use the Qopengl in the Qtgui module.
- Qt Organizer, using the QML and C + + APIs to access organization events (organizer event). The Organizer API is part of the Personal information Management API for accessing Calendar information. The organizer API enables you to access calendar time from the Calendar database, import ICalendar events, or export your own events to ICalendar.
- QtPrint Support, which supports printing features.
- Qt Publish and Subscribeprovide applications with the ability to read, navigate, subscribe to, and so on, project values.
- qt Quick 1, a qtdeclarative module transplanted from Qt 4, is used to provide compatibility with QT 4. If you need to develop a new program, you need to use the QtQuick module.
- QtScript, which provides a scripting mechanism. This is also to provide compatibility with Qt 4, if you want to use scripted support, use the qjs* class of the QTQML module.
- qt Script Toolsprovides additional components for applications that use the QT script module.
- Qt Sensorsprovides access to QML and C + + interfaces for all types of sensors.
- The Qt service Framework, which provides services for clients to discover other devices. The Qt service Framework defines a unified set of mechanisms for discovering, implementing, and accessing services on different platforms.
- Qt svg, which provides the ability to render and create SVG files.
- Qt System Infoprovides a set of APIs for discovering system-related information, such as battery usage, lock screen, hardware features, and more.
- QTTools provides a handy tool for QT development, including Qt Clucene, Qt Designer, Qt help, and QT UI tools.
- Qt Versit, which provides support for the Versit API. The Versit API is part of the Personal information Management API for conversion between Qcontacts and VCard and Qorganizeritems and ICalendar.
- qt Wayland, used only for Linux platforms, replaces Qws, including QT compositor API (server) and Wayland platform plug-ins (clients).
- qt WebKit, a WebKit1 and Qwidget-based API ported from QT 4.
- qt Widgets, which uses the C + + extended QT Gui module, provides some interface components such as buttons, radio boxes, and so on.
- Qt XML, the C + + implementation of SAX and DOM. The module has been abolished, please use Qxmlstreamreader/writer.
- Qt XML Patterns, which provides support for XPath, XQuery, XSLT, and XML Schema validation.
It is important to emphasize that QT's extension module is not part of QT's need to be installed, so QT may offer more extensions in future releases, and here are just some of the parts that are now identified as being included in Qt 5, and others, such as Qt Active, Qt QA, and so on, May will appear in beta and later versions.
Qt 4 is also divided into several modules, but these modules are somewhat different from QT 5. The following is the Qt 4 module:
- Qtcore, QT provides a non-GUI core class library, which is roughly the same as Qt 5, except that the QT 4 Core class library does not contain JSON, XML processing, and so on.
- Qtgui, graphical user interface component, this module is equivalent to the sum of two modules of Qt 5 Qtgui and Qtwidgets.
- Qtmultimedia, multimedia support, similar to QT 5 related parts.
- qtnetwork, network support, similar to Qt 5.
- Qtopengl, providing support for OpenGL. In Qt 5, this part was ported to the Qtgui module.
- QTOPENVG, providing support for OpenVG.
- Qtscript, provides support for Qt Scripts. Qt script is a JavaScript-like scripting language. In Qt 5, it is recommended to use the JavaScript section of QTQML.
- Qtscripttools, additional components for Qt Script.
- Qtsql, provides support for SQL database.
- Qtsvg, provides support for SVG files.
- Qtwebkit, which provides the display and editing of Web content.
- qtxml, XML processing, this part was added to the Qtcore in Qt 5.
- Qtxmlpatternsprovides support for XQuery, XPath, and so on.
- qtdeclarative, an engine used to write graphical user interfaces in animated form.
- Phonon, multimedia framework.
- qt3support, Qt 3 compatible class library.
Here are some of the tools modules for Qt 4:
- Qtdesigner, used to extend Qt Designer.
- Qtuitools, which is used to process Qt Designer-generated form files in their own referencing program.
- qthelp, online Help.
- qttest, Unit test.
The following are modules dedicated to the Windows platform:
- Qaxcontainer, which is used to access ActiveX controls.
- qaxserver, used to write an ActiveX server.
Here are the modules specifically for the Unix platform:
Qtdbus, using D-bus to provide inter-process interaction
http://www.devbean.net/2012/08/qt-study-road-2-modules/
QT5 Module Introduction "Pick"