上一篇文章介紹了pythonGUI拖拽式工具和pyqt5的安裝介
地址:http://www.itdecent.cn/p/1f3d4748c8ad
這里介紹一下pyqt5和拖拽式工具qtdesigner,以及將qtdesigner,pyuic命令增加到pycharm中。
知識(shí)點(diǎn):為什么需要增加到pycharm中,上面介紹了eric,為什么還要介紹qtdesigner。
答:首先eric6是一款結(jié)合python和pyqt5的一個(gè)編譯器,它可以直接在其內(nèi)部通過(guò)拖拽來(lái)生成我們想要的GUI效果,然后在其內(nèi)部可以通過(guò)功能按鈕直接生成一個(gè)可執(zhí)行的文件,并且可以在生成py文件中修改代碼和調(diào)試。不需要額外的python編譯器。而我們通過(guò)qtdesigner來(lái)進(jìn)行GUI的創(chuàng)作時(shí),它可以在其內(nèi)部查看我們GUI效果。但是當(dāng)我們需要打包給別人當(dāng)成一個(gè)APP來(lái)用時(shí),我們需要將其編譯成py文件。然后才能進(jìn)行打包。而將qtdesigner編譯的ui文件打包需要在終端執(zhí)行(將你的ui文件保存在pycharm的項(xiàng)目中)下面的操作
pyuic5 -o 需要生成的文件.py 你編譯的uiwen文件.ui來(lái)執(zhí)行。如果你想通過(guò)pycharm執(zhí)行ui生成的py文件時(shí),你還需要在py文件的下面添加如下代碼
if name__ == 'main':
?????????app = QApplication(sys.argv) # 創(chuàng)建一個(gè)QApplication,也就是你要開發(fā)的軟件app ?????????MainWindow = QMainWindow() # 創(chuàng)建一個(gè)QMainWindow,用來(lái)裝載你需要的各種組件、控件
?????????ui = Ui_MainWindow() # ui是你創(chuàng)建的ui類的實(shí)例化對(duì)象
?????????ui.setupUi(MainWindow) # 執(zhí)行類中的setupUi方法,方法的參數(shù)是第二步中創(chuàng)建的QMainWindow
?????????MainWindow.show() # 執(zhí)行QMainWindow的show()方法,顯示這個(gè)MainWindow
?????????sys.exit(app.exec_()) # 使用exit()或者點(diǎn)擊關(guān)閉按鈕退出QApplication
而且來(lái)回在qtdesingner和pycharm以及終端進(jìn)行切換很麻煩。
那為什么我還要介紹呢
原因:我們可以通過(guò)一些操作來(lái)簡(jiǎn)化一些上面qtdesigner轉(zhuǎn)換步驟步驟,下面來(lái)正式介紹
1.下面安裝python3.6和pycharm
具體的安裝以及環(huán)境配置就不介紹了
2.安裝pyqt5和pyqt5-tools
pip install pyqt5==5.10.1 -i https://pypi.doubanio.com/simple/
安裝完成后看是否能導(dǎo)入pyqt5如果在終端或編譯器導(dǎo)入pyqt5,運(yùn)行報(bào)錯(cuò)提示no pyqt5.sip 時(shí),通過(guò)下面的命令安裝它
pip install sip==4.19.8
pip install pyqt5-tools -i https://pypi.doubanio.com/simple/
2.3 執(zhí)行完上面的操作后,然后將安裝的pyqt5和pyqt5-tools的對(duì)應(yīng)路徑加入到環(huán)境變量中
例如:D:/xx/xxx/xx/pyqt5 和D:/xx/xxx/xx/pyqt5-tools這兩個(gè)路徑加入到你的環(huán)境變量里面(用戶環(huán)境變量的path里面新建這兩個(gè)路徑)
qtdesigner.exe就在你的 pyqt5-tools文件中,如下圖

解釋一下:你通過(guò)pip或pipenv安裝的包都在你的python解釋器所在目錄中的lib文件夾中的site-packages。你根據(jù)包的名稱在這個(gè)site-packages文件夾去找就ok了。
而命令pyuic5.exe在scripts文件下,如圖

2.將pyuic與qtdesigner配置到pycharm中
2.1首先在你的磁盤中先建一個(gè)空的文件夾來(lái)存放qtdesigner創(chuàng)建的ui文件,然后打開pycharm項(xiàng)目地址就定位在所在的那個(gè)文件夾并配置pycharm的解釋器。
2.1.1點(diǎn)擊file

找到settings

在settings 找到external tools

剛開始,上圖中的右邊區(qū)域你什么都沒(méi)有,點(diǎn)擊+號(hào),開始配置qtdesigner,配置信息如下

1.名字
2.你的designer.exe所在路徑 (在pyqt5tools下的QT文件夾下的bin中)
3.將當(dāng)前的目錄作為designer的工作目錄
點(diǎn)擊ok
2.2 配置完designer,繼續(xù)點(diǎn)擊加號(hào)配置pyuic5

1.名字
2.pyuic5所在路徑,(位置在scripts目錄下面)
3.
\$FileName\$ -o \$FileNameWithoutExtension\$.py -x將這句話加入4.與上面的designer同理(可以根據(jù)你的ui文件所在目錄進(jìn)行編譯$FileDir$)
點(diǎn)擊ok
執(zhí)行完上面的步驟,你就可以查看你的擴(kuò)展工具了,如下

3.我們做一個(gè)測(cè)試
我們點(diǎn)擊pycharm中的qtdesigner,進(jìn)入designer

按上圖操作點(diǎn)擊Main Window 然后點(diǎn)擊Create,創(chuàng)建內(nèi)容,將text Edit拖拽到主窗口中并輸入相關(guān)的內(nèi)容

點(diǎn)擊保存

1.點(diǎn)擊保存按鈕
2.修改ui名稱
3.它保存的路徑就是我們剛才在配置designer時(shí)設(shè)置的pycharm當(dāng)前工作目錄,然后在我們的pycharm項(xiàng)目中就會(huì)出現(xiàn)

最后選中ui文件,右擊

在當(dāng)前的終端就會(huì)執(zhí)行pyuic5命令,并生成對(duì)應(yīng)名字相同的py名稱

點(diǎn)開生成py文件,加上這段代碼

然后導(dǎo)入相應(yīng)的包

這樣就可以運(yùn)行了。(在將ui文件轉(zhuǎn)成py文件時(shí),加上-x可以直接生成可編譯的py文件)
:
??有時(shí)候需要加載一些靜態(tài)資源比如你的ui文件中有圖片資源,在編譯ui轉(zhuǎn)換的py文件時(shí)需要加載圖片資源,所以,需要把資源文件(以qrc為后綴的文件進(jìn)行編譯)

1.pyrcc5.exe所在目錄(與上面pyuic5在同一個(gè)目錄中)
2.
$FileName$ -o $FileNameWithoutExtension$_rc.py3.
$FileDir$
小tip
如果你不喜歡每次都寫這段代碼,你可以將這段代碼包裝成活動(dòng)模板,就像你在pycharm中調(diào)用某一個(gè)函數(shù)的時(shí)候,你會(huì)發(fā)現(xiàn)你剛輸入這個(gè)函數(shù)的前幾個(gè)字母,然后prcharm就會(huì)自動(dòng)把符合這幾個(gè)字母的函數(shù)例舉出來(lái),讓你選。具體怎么操作百度吧。我就不說(shuō)了。