Qt5模塊簡介


    原文鏈接: Qt5 模塊簡介

   無意中看到這篇文章,雖然講的不是經常用的東西,但是看了這篇文章之后,可以對qt個大致的了解,能夠清晰的知道自己想要什么,應該關注那一部分,學習了,相信以后會又很大用處Qt5 <wbr>模塊簡介Qt5 <wbr>模塊簡介

   Qt 5 與 Qt 4 最大的一個區別之一是底層架構有了修改。Qt 5 引入了模塊化的概念,將眾多功能細分到幾個模塊之中。Qt 4 也有模塊的概念,但是是一種很粗的划分,而 Qt 5 則更加細化。本節主要對 Qt 5 的模塊進行一個簡單的介紹,以便以后大家需要哪些功能的時候知道到哪個模塊去尋找。

   Qt 5 模塊分為 Essentials Modules 和 Add-on Modules 兩部分。前者是基礎模塊,在所有平台上都可用;后者是擴展模塊,建立在基礎模塊的基礎之上,在能夠運行 Qt 的平台之上可以酌情引入。

 

Qt 基礎模塊分為以下幾個:

Qt Core,提供核心的非 GUI 功能,所有模塊都需要這個模塊。這個模塊的類包括了動畫框架、定時器、各個容器類、時間日期類、事件、IOJSON、插件機制、智能指針、圖形(矩形、路徑等)、線程、XML 等。所有這些類都可以通過  頭文件引入。

Qt Gui,提供 GUI 程序的基本功能,包括與窗口系統的集成、事件處理、OpenGL 和 OpenGL ES 集成、2D 圖像、字體、拖放等。這些類一般由 Qt 用戶界面類內部使用,當然也可以用於訪問底層的 OpenGL ES 圖像 APIQt Gui 模塊提供的是所有圖形用戶界面程序都需要的通用功能。

Qt Multimedia,提供視頻、音頻、收音機以及攝像頭等功能。這些類可以通過  引入,而且需要在 pro 文件中添加 QT += multimedia

Qt Network,提供跨平台的網絡功能。這些類可以通過  引入,而且需要在 pro 文件中添加 QT += network

Qt Qml,提供供 QML(一種腳本語言,也提供 JavaScript 的交互機制) 使用的 C++ API。這些類可以通過  引入,而且需要在 pro 文件中添加 QT += qml

Qt Quick,允許在 Qt/C++ 程序中嵌入 Qt Quick(一種基於 Qt 的高度動畫的用戶界面,適合於移動平台開發)。這些類可以通過  引入,而且需要在 pro 文件中添加 QT += quick

Qt SQL,允許使用 SQL 訪問數據庫。這些類可以通過  引入,而且需要在 pro 文件中添加 QT += sql

Qt Test,提供 Qt 程序的單元測試功能。這些類可以通過  引入,而且需要在 pro 文件中添加 QT += testlib

Qt Webkit,基於 WebKit2 的實現以及一套全新的 QML API(順便說一下,Qt 4.8 附帶的是 QtWebkit 2.2)。

 

Qt 擴展模塊則有更多的選擇:

Qt 3D,提供聲明式語法,在 Qt 程序中可以簡單地嵌入 3D 圖像。Qt 3D 為 Qt Quick 添加了 3D 內容渲染。Qt 3D 提供了 QML 和 C++ 兩套 API,用於開發 3D 程序。

Qt Bluetooth,提供用於訪問藍牙無線設備的 C++ 和 QML API

Qt Contacts,用於訪問地址簿或者聯系人數據庫的 C++ 和 QML API

Qt Concurrent,封裝了底層線程技術的類庫,方便開發多線程程序。

Qt D-Bus,這是一個僅供 Unix 平台使用的類庫,用於利用 D-Bus 協議進行進程間交互。

Qt Graphical Effects,提供一系列用於實現圖像特效的類,比如模糊、銳化等。

Qt Image Formats,支持圖片格式的一系列插件,包括 TIFFMNGTGA 和 WBMP

Qt JS Backend,該模塊沒有公開的 API,是 V8 JavaScript 引擎的一個移植。這個模塊僅供 QtQml 模塊內部使用。

Qt Location,提供定位機制、地圖和導航技術、位置搜索等功能的 QML 和 C++ API

Qt OpenGL,方便在 Qt 應用程序中使用 OpenGL。該模塊僅僅為了程序從 Qt 4 移植到 Qt 5 的方便才保留下來,如果你需要在新的 Qt 5 程序中使用 OpenGL 相關技術,需要使用的是 QtGui 模塊中的 QOpenGL

Qt Organizer,使用 QML 和 C++ API 訪問組織事件(organizer event)。organizer API 是 Personal Information Management API 的一部分,用於訪問 Calendar 信息。通過 Organizer API 可以實現:從日歷數據庫訪問日歷時間、導入 iCalendar 事件或者將自己的事件導出到 iCalendar

Qt Print Support,提供對打印功能的支持。

Qt Publish and Subscribe,為應用程序提供對項目值的讀取、導航、訂閱等的功能。

Qt Quick 1,從 Qt 4 移植過來的 QtDeclarative 模塊,用於提供與 Qt 4 的兼容。如果你需要開發新的程序,需要使用 QtQuick 模塊。

Qt Script,提供腳本化機制。這也是為提供與 Qt 4 的兼容性,如果要使用腳本化支持,請使用 QtQml 模塊的 QJS* 類。

Qt Script Tools,為使用了 Qt Script 模塊的應用程序提供的額外的組件。

Qt Sensors,提供訪問各類傳感器的 QML 和 C++ 接口。

Qt Service Framework,提供客戶端發現其他設備的服務。Qt Service Framework 為在不同平台上發現、實現和訪問服務定義了一套統一的機制。

Qt SVG,提供渲染和創建 SVG 文件的功能。

Qt System Info,提供一套 API,用於發現系統相關的信息,比如電池使用量、鎖屏、硬件特性等。

Qt Tools,提供了 Qt 開發的方便工具,包括 Qt CLuceneQt DesignerQt Help 以及 Qt UI Tools 

Qt Versit,提供了對 Versit API 的支持。Versit API 是 Personal Information Management API 的一部分,用於 QContacts 和 vCard 以及 QOrganizerItems 和 iCalendar 之間的相互轉換。

Qt Wayland,僅用於 Linux 平台,用於替代 QWS,包括 Qt Compositor APIserver)和 Wayland 平台插件(clients)。

Qt WebKit,從 Qt 4 移植來的基於 WebKit1 和 QWidget 的 API

Qt Widgets,使用 C++ 擴展的 Qt Gui 模塊,提供了一些界面組件,比如按鈕、單選框等。

Qt XMLSAX 和 DOM 的 C++ 實現。該模塊已經廢除,請使用 QXmlStreamReader/Writer

Qt XML Patterns,提供對 XPathXQueryXSLT 和 XML Schema 驗證的支持。

這里需要強調一點,由於 Qt 的擴展模塊並不是 Qt 必須安裝的部分,因此 Qt 在未來版本中可能會提供更多的擴展模塊,


 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM