pyqt5、qtdesigner安裝和環(huán)境設置教程
前言
最近工作需要寫一個界面程序來調用攝像頭并對攝像頭采集的圖像做一些處理。程序需要使用Python語言編寫,經(jīng)過調研發(fā)現(xiàn)PyQt5配合QtDesigner在界面程序編寫方面具有功能豐富、入門簡單的優(yōu)點,適合我這種編程的小白。PyQt5雖然入門比較簡單,但對于我這種小白來講還是挺有難度的,學習過程中也費了不少的力氣,因此在這里總結一下程序編寫的過程,方便以后回顧,也方便有需要的童鞋借鑒。
我工作中使用的是USB接口輸入的Flir相機,結合串口輸出將相機和其它硬件組成閉環(huán)回路。這里介紹的是一個簡化版的界面程序,它調用的是筆記本自帶的攝像頭,實現(xiàn)的功能就是實時顯示攝像頭的圖像,并且可以設置攝像頭的曝光、增益、亮度、顏色等參數(shù),程序比較簡單而且對硬件要求較低,非常適合初學者。
由于內容比較多,我將它分成5個部分介紹,分別為:PyQt+QtDesigner及opencv等工具的安裝與設置;基于QtDesigner的界面設計;主程序的編寫;筆記本攝像頭的讀取、顯示和參數(shù)控制;exe可執(zhí)行程序的生成。下面介紹第一部分。
PyQt+QtDesigner及相關插件的安裝和設置
我使用PyCharm作為程序的編寫界面,python的版本是3.6,筆記本的操作系統(tǒng)是win10。這部分內容包括PyQt5+QtDesigner以及其它工具包的安裝、將QtDesigner和PyUIC鏈接到PyCharm的外部工具庫、使用QtDesigner生成ui文件并將其轉換成py文件并編寫主函數(shù)來顯示該界面。
1、PyQt、QtDesigner及其它工具包的安裝
PyQt和QtDesigner的安裝和鏈接到PyCharm的方法可參考鏈接:
Pycharm+Python+PyQt5使用
我是參照該鏈接學習,并根據(jù)自己的需要做了一些修改,下面介紹一下我的安裝過程。
1)安裝PyQt5、QtDesigner、PyUIC、opencv等工具
(在此之前,需要先完成python和pip工具的安裝)
打開cmd窗口,輸入
pip install pyqt5
電腦會自動下載并安裝合適版本的pyqt5.
完成后,再輸入
pip install pyqt5-tools
自動完成QtDesigner和PyUIC等的安裝。
除此之外,我在程序編寫過程中還用到了opencv和qimage2ndarray模塊,最后如果想生成exe可執(zhí)行文件則還需要安裝pyinstaller,其安裝命令分別為:
pip install opencv-python pip install qimage2ndarray pip install pyinstaller
至此,所有用到的模塊都安裝完成。
2、將QtDesigner和PyUIC鏈接到PyCharm的外部工具庫
QtDesigner與PyCharm的鏈接見下圖所示:點擊PyCharm的File->Settings->Tools->External tools打開外部工具界面,點‘+'號進入添加外部工具界面。在‘Name'處輸入工具名稱,這個名稱可以隨便取,只要自己清楚就行,我這里寫的是Qt designer。然后,找到安裝的designer.exe所在的路徑(一般在python安裝目錄下的Lib\site-packages\pyqt5_tools文件夾里),將其路徑復制到‘Programs'處,注意要包含designer.exe的文件名。Working directory處設置自己的工作路徑,qtdesigner生成的ui文件會默認保存在該路徑?!瓵rguments'不用設置,確認即可。
接下來,按同樣的方法添加pyuic,pyuic用于將qtdesigner生成的.ui文件轉換成python可以識別的.py文件。其設置過程如下圖所示,Programs處輸入python.exe所在的路徑和文件名,Arguments處輸入:
-m PyQt5.uic.pyuic -o $FileNameWithoutExtension$.py $FileName$
在Working directory處輸入:
$FileDir$
這樣生成的py文件就會和被轉換的ui文件位于相同的文件夾下。點擊ok完成設置。
設置完成后就可以在PyCharm的Tools->External Tools菜單下看到我們新添加的工具了。
3、界面設計測試小程序
打開PyCharm,選擇菜單File->New Project新建一個工程項目,如下圖所示,輸入該項目的路徑和名稱,這里設置項目名稱為PyQtTest。
完成后,單擊Tools->External Tools->Qt designer打開QtDesigner。
QtDesigner打開后會自動彈出新建窗口的對話框,如果沒有彈出的話可以單擊File->New來打開該對話框。如下圖所示,選擇Main Windows,然后單擊Create來創(chuàng)建一個主窗口。
QtDesigner打開后的界面如下圖所示,我用紅框標出了四個常用的區(qū)域,左上角的區(qū)域顯示了我們界面窗口所有使用的控件列表和對應的名稱;左下角區(qū)域是所有可用的控件庫;中間是工作區(qū),我們可以將控件從控件庫拖拽到工作區(qū)來組合我們的程序界面;右側區(qū)域為控件屬性設置區(qū),在我們單擊選中某一個控件后,它的屬性就會在這里顯示出來,我們也可以在這里對控件的屬性進行修改。
在左下角的控件菜單中找到Push Button,用鼠標左鍵將其拖到中間區(qū)域,然后單擊File->Save as,將當前界面保存到我們剛創(chuàng)建的PyQtTest項目文件夾下,文件名設為QtTest.ui。
保存完成后,回到PyCharm中,可以看到我們的PyQtTest項目下多了一個QtTest.ui文件。鼠標右鍵單擊該文件調出右鍵菜單,單擊External tools->PyUIC,程序會調用pyuic,將ui文件轉換為py文件,執(zhí)行完成后就會在該項目中生成一個QtTest.py文件了。
打開QtTest.py文件會發(fā)現(xiàn),里面只有一個Ui_MainWindow類,沒有主程序,我們需要自己編寫一個主程序來調用Ui_MainWindow類。
由于QtTest.py是通過pyuic自動生成的,當我們在qtdesigner中對程序界面進行修改,并重新生成QtTest.py時,里面原來的內容會被全部覆蓋掉,因此我們盡量不要在QtTest.py中添加自己的代碼,而是新建一個py文件來調用QtTest.py中的類,將自己的代碼都放在新創(chuàng)建的文件中。
接下來右鍵單擊PyQtTest項目,選擇New->Python File新建一個Python文件,文件名設為'QtUi.py',打開該文件輸入如下代碼:
from QtTest import Ui_MainWindow import sys from PyQt5.QtWidgets import QApplication,QMainWindow class CamShow(QMainWindow,Ui_MainWindow): def __init__(self,parent=None): super(CamShow,self).__init__(parent) self.setupUi(self) if __name__ == '__main__': app = QApplication(sys.argv) ui=CamShow() ui.show() sys.exit(app.exec_())
然后在代碼區(qū)單擊右鍵選擇Run QtUi,執(zhí)行該代碼,即可顯示出我們在QtDesigner中設計的程序界面了。
本節(jié)介紹了PyQt、QtDesigner、PyUIC以及Opencv等工具的安裝和PyCharm的外部工具配置,并簡單介紹了從程序界面設計到最終程序運行的流程。下一節(jié)將詳細介紹使用QtDesigner設計攝像頭程序界面的過程。
總結
以上所述是小編給大家介紹的pyqt5、qtdesigner安裝和環(huán)境設置教程,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
相關文章
python基礎教程之popen函數(shù)操作其它程序的輸入和輸出示例
popen函數(shù)允許一個程序將另一個程序作為新進程啟動,并可以傳遞數(shù)據(jù)給它或者通過它接收數(shù)據(jù),下面使用示例學習一下他的使用方法2014-02-02在Python3 numpy中mean和average的區(qū)別詳解
今天小編就為大家分享一篇在Python3 numpy中mean和average的區(qū)別詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-08-08numpy數(shù)據(jù)類型dtype轉換實現(xiàn)
這篇文章主要介紹了numpy數(shù)據(jù)類型dtype轉換實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-04-04