PyQt5 函式庫
PyQt5 是 Python 的一個第三方函式庫,是 Python 用來設計使用者介面 ( GUI ) 的函式庫,如果要設計比較美觀,或程式碼比較容易理解的介面,往往會使用 PyQt5 取代 Python 內建的 Tkinter 進行實作,這篇教學會介紹如何安裝 PyQt5 函式庫,以及 PyQt5 的基本介紹。
- PyQt6 版本參考:PyQt6 教學 - PyQt6 函式庫
- 因為 Google Colab 不支援 PyQt5,所以請使用本機環境 ( 參考:使用 Python 虛擬環境 ) 或使用 Anaconda Jupyter 進行實作 ( 參考:使用 Anaconda )。
PyQt5 的特色
Qt 本身是 C++ 的函式庫,而 PyQt 則是 Qt 的分支,主要是使用 Python 搭配 Qt 進行介面的設計開發,PyQt 除了能利用 Python 語法,也保留了 Qt 的強大功能,大多數使用 Python 所開發出來的功能,都可以搭配 PyQt。
PyQt5 可以利用 Qt Designer 的視覺畫圖形編輯工具設計介面,再將介面轉換成 Python 程式碼後串接程式邏輯,大幅降低了介面設計的門檻。
安裝 PyQt5 函式庫
因為 Colab 不支援 GUI 介面編輯,所以必須使用 Anaconda 或 Python 虛擬環境,進入 Jupyter 或虛擬環境後,輸入下列指令,就能安裝 PyQt5 函式庫。
pip install PyQt5
簡單感受一下 PyQt5
下方的程式碼執行後,會產生一個 300x200 的視窗,當中會有一個可以點擊的按鈕。
from PyQt5 import QtWidgets, QtCore
import sys
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
MainWindow.setObjectName("MainWindow")
MainWindow.setWindowTitle("oxxo.studio")
MainWindow.resize(300, 200)
pushButton = QtWidgets.QPushButton(MainWindow)
pushButton.setGeometry(QtCore.QRect(100, 70, 113, 32))
pushButton.setObjectName("pushButton")
pushButton.setText("PushButton")
MainWindow.show()
sys.exit(app.exec_())
也可以將程式碼改成 class 的寫法。
from PyQt5 import QtWidgets, QtCore
import sys
class MyWidget(QtWidgets.QWidget):
def __init__(self):
super().__init__()
self.setObjectName("MainWindow")
self.setWindowTitle('oxxo.studio')
self.resize(300, 200)
self.ui()
def ui(self):
pushButton = QtWidgets.QPushButton(self)
pushButton.setGeometry(QtCore.QRect(100, 70, 113, 32))
pushButton.setObjectName("pushButton")
pushButton.setText("PushButton")
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
MainWindow = MyWidget()
MainWindow.show()
sys.exit(app.exec_())
PyQt5 參考資料
意見回饋
如果有任何建議或問題,可傳送「意見表單」給我,謝謝~