安裝完PyQt后我們去看看這個庫里面有些什么
cd /usr/lib/python3/dist-packages/PyQt5/ && ls
都是些.so的動態鏈接庫,這就是為什么我們在安裝pyqt前要先安裝sip的緣故了
sip就是用來調用這些動態庫的,想要了解更多sip知識請自行百度,這里不是我們要講的重點
這里每一個動態庫就是一個模塊,我們要說的是這些模塊都包含那些功能,以便以后我們要做東西的時候才知道該導入那些庫,
比如我們的軟件里面需要一個播放媒體的功能,你至少要知道這個功能包含在QtMultimedia模塊中,如果你要的功能在那個模塊中都不知道,還怎么玩
這里是官方文檔的介紹(英文): http://pyqt.sourceforge.net/Docs/PyQt5/introduction.html
網上找了一個pyqt4的介紹,基本的差不多,
QtCore 模塊包括了核心的非GUI功能,該模塊用來對時間、文件、目錄、各種數據類型、流、網址、媒體類型、線程或進程進行處理。
QtGui 模塊包括圖形化窗口組件和及相關類。包括如按鈕、窗體、狀態欄、滑塊、位圖、顏色、字體等等。
QtHelp 模塊包含了用於創建和查看可查找的文檔的類。
QtNetwork 模塊包括網絡編程的類。這些類可以用來編寫TCP/IP和UDP的客戶端和服務器。它們使得網絡編程更容易和便捷。
QtOpenGL 模塊使用OpenGL庫來渲染3D和2D圖形。該模塊使得Qt GUI庫和OpenGL庫無縫集成。
QtScript 模塊包含了使PyQt應用程序使用JavaScript解釋器編寫腳本的類。
QtSql 模塊提供操作數據庫的類。
QtSvg 模塊提供了顯示SVG文件內容的類。可縮放矢量圖形(SVG)是一種用XML描述二維圖形和圖形應用的語言。
QtTest 模塊包含了對PyQt應用程序進行單元測試的功能。(PyQt沒有實現完全的Qt單元測試框架,相反,它假設使用標准的Python單元測試框架來實現模擬用戶和GUI進行交互。)
QtWebKit 模塊實現了基於開源瀏覽器引擎WebKit的瀏覽器引擎。
QtXml 包括處理XML文件的類,該模塊提供了SAX和DOM API的接口。
QtXmlPatterns 模塊包含的類實現了對XML和自定義數據模型的XQuery和XPath的支持。
phonon 模塊包含的類實現了跨平台的多媒體框架,可以在PyQt應用程序中使用音頻和視頻內容。
QtMultimedia 模塊提供了低級的多媒體功能,開發人員通常使用 phonon 模塊。
QtAssistant 模塊包含的類允許集成 Qt Assistant 到PyQt應用程序中,提供在線幫助。
QtDesigner 模塊包含的類允許使用PyQt擴展 Qt Designer 。
Qt 模塊綜合了上面描述的模塊中的類到一個單一的模塊中。這樣做的好處是你不用擔心哪個模塊包含哪個特定的類,壞處是加載進了整個Qt框架,從而增加了應用程序的內存占用。
uic 模塊包含的類用來處理.ui文件,該文件由Qt Designer創建,用於描述整個或者部分用戶界面。它包含的加載.ui文件和直接渲染以及從.ui文件生成Python代碼為以后執行的類。
///////
Qt5增加了很多模塊,增加的這些模塊去官方看看,基本上看模塊名字就知道大概用處了,剛入門知道上面的就可以了。
還有就是Qt5已經沒有phonon模塊了,Qt5就用QtMultimedia處理媒體吧
另外 Qt5 新增QtWebEngineWidgets模塊來替代過時的QtWebKit,但是QtWebKit還在,新模塊更耗內存,具體使用那個請自便