python PyQt5教程
生活随笔
收集整理的這篇文章主要介紹了
python PyQt5教程
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
引用文章1:python PyQt5 教程
參考文章2:PyQt5 python官方教程 Qt for Python
pyqt5-基礎
PyQt5是一套來自Digia的Qt5應用框架和Python的粘合劑。支持Python2.x和Python3.x版本。
PyQt5以一套Python模塊的形式來實現功能。它包含了超過620個類,600個方法和函數。它是一個多平臺的工具套件,它可以運行在所有的主流操作系統中,包含Unix,Windows和Mac OS。PyQt5采用雙重許可模式。開發者可以在GPL和社區授權之間選擇。
PyQt5的類被劃分在幾個模塊中,下面列出了這些模塊:
- QtCore :模塊包含了非GUI的功能設計。這個模塊被用來實現時間,文件和目錄,不同數據類型,流,URL,mime類型,線程和進程。
- QtGui:模塊包含的類用于窗口化的系統結構,事件處理,2D繪圖,基本圖形,字體和文本。
- QtWidgets:模塊包含的類提供了一套UI元素來創建經典桌面風格用戶界面。
- QtMultimedia:模塊包含的類用于處理多媒體內容和鏈接攝像頭和無線電功能的API。
QtBluetooth:模塊包含的類用于掃描藍牙設備,并且和他們建立連接互動。 - QtNetwork:模塊包含的類用于網絡編程,這些類使TCP/IP和UDP客戶端/服務端編程更加容易和輕便。
- QtPositioning:模塊包含的類用于多種可獲得資源的位置限定,包含衛星定位,Wi-Fi,或一個文本文件。
- Enginio:模塊用于解決客戶端訪問Qt云服務托管。
- QtWebSockets:模塊用于解決客戶端訪問Qt云服務托管。
- QtWebKit:包含的關于瀏覽器的類用于解決基于WebKit2的支持庫。
- QtWebKitWidgets:模塊包含的關于WebKit1的類基本解決瀏覽器使用基于QtWidgets應用問題。
- QtXml:QtXml 模塊包含的類用于解析XML文件。這個模塊提供SAX和DOM API解決方法。
QtSvg:模塊提供類用于顯示SVG文件內容。Scalable Vector Graphics (SVG) 是一種語言,用XML來描述二維圖形和圖形應用程序。 - QtSql:模塊提供類驅動數據庫工作。
- QtTest:模塊包含了方法提供PyQt5應用的單元測試。
PyQt5不向后兼容PyQt4;這是一些在PyQt5中的重要改變。然而,將舊代碼遷移到新的版本中并不是非常困難。不同點如下:
Python 模塊已經被改寫. 一些模塊被舍棄 (QtScript), 部分的模塊被分割成子模塊 (QtGui, QtWebKit).
新的模塊被引進, 包含 QtBluetooth, QtPositioning, 和 Enginio.
PyQt5 只支持最新風格的信號和槽的寫法. SIGNAL()和SLOT()的調用將不會被長時間支持.
PyQt5 不支持任何在Qt 5.0版本中棄用或取消的API.
安裝
pip install pyqt51、示例:簡單的窗口
import sys from PyQt5.QtWidgets import QApplication, QWidgetdef show_w():'顯示窗口'app = QApplication(sys.argv) # 所有的PyQt5應用必須創建一個應用(Application)對象。# sys.argv參數是一個來自命令行的參數列表。w = QWidget() # Qwidget組件是PyQt5中所有用戶界面類的基礎類。我們給QWidget提供了默認的構造方法。# 默認構造方法沒有父類。沒有父類的widget組件將被作為窗口使用。w.resize(500, 500) # resize()方法調整了widget組件的大小。它現在是500px寬,500px高。w.move(500, 100) # move()方法移動widget組件到一個位置,這個位置是屏幕上x=500,y=200的坐標。w.setWindowTitle('Simple') # 設置了窗口的標題。這個標題顯示在標題欄中。w.show() # show()方法在屏幕上顯示出widget。一個widget對象在這里第一次被在內存中創建,并且之后在屏幕上顯示。sys.exit(app.exec_()) # 應用進入主循環。在這個地方,事件處理開始執行。主循環用于接收來自窗口觸發的事件,# 并且轉發他們到widget應用上處理。如果我們調用exit()方法或主widget組件被銷毀,主循環將退出。# sys.exit()方法確保一個不留垃圾的退出。系統環境將會被通知應用是怎樣被結束的。if __name__ == '__main__':show_w()結果:
總結
以上是生活随笔為你收集整理的python PyQt5教程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python PyQt5如何绘制矩形框?
- 下一篇: 软件版权的双重许可是什么