想要熟練使用PyQt,還是需要深入研究下這個庫的使用,筆者這裡只是拋磚引玉。 關註公眾號「**Python專欄**」,後臺回覆:**zsxq06**,獲取本文全套代碼。 ...
0.環境
操作系統:Windows
Python版本:3.6.0
1.前言
PyQt是一個創建GUI應用程式的工具包。它是Python編程語言和Qt庫的成功融合。Qt庫是目前最強大的庫之一。
2.效果圖
3.環境安裝
3.1 依賴包安裝
pip install pyqt5
pip install pyqt5-tools
3.2 圖形設計界面工具
同學們如果需要qt的圖形設計界面,可以使用Pycharm+Python3+PyQt5+QtDesigner的方式搭建。QtDesigner可以直接拖控制項設計ui,非常方便。
搭建方法詳見:https://www.jianshu.com/p/094928ac0b73
QtDesigner下載鏈接:https://download.qt.io/archive/qt/
裝完以後效果大概就像下麵這樣:
註:Pycharm+Python3+PyQt5+QtDesigner環境搭建有些複雜,筆者也花了不少時間去研究怎麼安裝。限於篇幅,這裡不方便展開來講。反正還是一句話,要善於使用搜索引擎。
4.PyQt5的基本使用
4.1 hello world
import sys
from PyQt5.QtWidgets import QApplication, QWidget
if __name__ == '__main__':
app = QApplication(sys.argv)
w = QWidget()
w.resize(250, 150)
w.move(300, 300)
w.setWindowTitle('Simple')
w.show()
sys.exit(app.exec_())
4.2 hello world代碼詳解
筆者這邊來一句句解釋一下:
import sys
from PyQt5.QtWidgets import QApplication, QWidget
引入了PyQt5.QtWidgets模塊,這個模塊包含了基本的組件。
app = QtGui.QApplication(sys.argv)
每個PyQt5應用都必須創建一個應用對象。sys.argv是一組命令行參數的列表。Python可以在shell里運行,這個參數提供對腳本控制的功能。
w = QtGui.QWidget()
QWidge控制項是一個用戶界面的基本控制項,它提供了基本的應用構造器。預設情況下,構造器是沒有父級的,沒有父級的構造器被稱為視窗(window)。
w.resize(250, 150)
resize()方法能改變控制項的大小,這裡的意思是視窗寬250px,高150px。
w.move(300, 300)
move()是修改控制項位置的的方法。它把控制項放置到屏幕坐標的(300, 300)的位置。
註:屏幕坐標系的原點是屏幕的左上角。
w.setWindowTitle('Simple')
我們給這個視窗添加了一個標題,在標題欄展示。
w.show()
show()能讓控制項在桌面上顯示出來。控制項在記憶體里創建,之後才能在顯示器上顯示出來。
sys.exit(app.exec_())
最後,我們進入了應用的主迴圈中,事件處理器這個時候開始工作。主迴圈從視窗上接收事件,並把事件傳入到派發到應用控制項里。當調用exit()方法或直接銷毀主控制項時,主迴圈就會結束。
sys.exit()方法能確保主迴圈安全退出。外部環境能通知主控制項怎麼結束。
5.彈窗程式實現
邏輯大概分為以下兩步:
- 初始化ui(包括視窗位置,大小,圖標,點擊按鈕等)
- 在初始化ui方法中調用點擊事件
6.總結
想要熟練使用PyQt,還是需要深入研究下這個庫的使用,筆者這裡只是拋磚引玉。
關註公眾號「Python專欄」,後臺回覆:zsxq06,獲取本文全套代碼。