python PyQt5初級教程hello world
PyQt5初級教程hello world
本文主要介紹環境的安裝和用QT拖控制元件實現一個簡單的hello程式
PyQt5安裝
經過我的多次嘗試,發現python3.5才能順利裝上PyQt5。安裝方法很簡單,一條命令搞定pip install pyqt5
可以用如下程式碼測試環境是否安裝成功,執行成功會出現一個視窗:
from PyQt5 import QtWidgets, QtGui import sys app = QtWidgets.QApplication(sys.argv) window = QtWidgets.QWidget(); window.show() sys.exit(app.exec_())
QT Creator安裝
因為我們需要使用Qt design來設計介面,所以需要安裝Qt Creator。直接官網下載安裝就好,比較大,需要耐心等待。
QT Creator繪製介面
-
開啟Qt Creator,新建一個工程,QT -> Qt設計師介面類 -> Widget -> 儲存
預設儲存就好,不用管儲存為form.cpp哪裡,因為我們只需要form.ui這個檔案 -
然後儲存
- 把form.ui檔案編譯為form.py檔案
去之前儲存form.ui的目錄,shift+右鍵,在當前路徑開啟控制檯,執行如下命令pyuic5 form.ui -o form.py
如果找不到pyuic5可執行程式,檢查一下環境變數是否正確
至此介面已經生成,後面就是使用form.py這個介面了
使用Qt Design生成的介面
開啟這個form.py這個檔案,可以看到生成了Ui_Form這個類,有一些我們新增的控制元件。我們只需要匯入類,做初始化,然後編寫自定義的槽函式就可以了。
程式碼如下:
from PyQt5 import QtWidgets, QtGui import sys from form import Ui_Form #匯入生成form.py裡生成的類 class mywindow(QtWidgets.QWidget,Ui_Form): def __init__(self): super(mywindow,self).__init__() self.setupUi(self) #定義槽函式 def hello(self): self.textEdit.setText("hello world") app = QtWidgets.QApplication(sys.argv) window = mywindow() window.show() sys.exit(app.exec_())
幫助文件使用
有了上面的簡單例子,就可以依葫蘆畫瓢做一些簡單的應用了。但對一個控制元件,往往需要了解它的屬性方法,才能方便我們程式設計。
官方文件網站 http://pyqt.sourceforge.net/Docs/PyQt5/index.html 開啟點進去之後是C++的,覺得很納悶。後面就理解了,pyqt5安裝的時候會安裝SIP,SIP的作用就是讓python呼叫C,C++函式,所以pyqt5實則就是呼叫了QT
C++的庫,那麼看QT C++庫的幫助文件也一樣。
拿上面例子的QTextEdit類來說,可以直接在QT Creator裡看(畢竟是離線的)。幫助 -> Qt5.7.1 Reference Documentation -> class,然後搜尋就可以了
我們就可以在Public Slots裡面找到setText方法了