国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
PythonpyQt5適于新手上路(第一篇環(huán)境和配置)

1. 前言

https://m.toutiao.com/is/JGSHc2X/

博主是一名有幾年開發(fā)經(jīng)驗的Python社畜。網(wǎng)上關于pyQt5的資料實際上也不少,但大都是對某個具體問題的討論,比較零散。而我在寫代碼的過程中經(jīng)常遇到各種各樣的問題,這使得我經(jīng)常在數(shù)十個網(wǎng)站上查詢資料,很不友好。為此我決定寫這篇文章,詳細記錄一下從零到一的過程,也希望以此拋磚引玉,向大佬們學習

以下是demo演示


可以看到這個樸實無華的工具效果圖……
雖然很簡陋,但是我需要的基本功能還是實現(xiàn)了。demo的內(nèi)容大致包含:事件的觸發(fā)、文件讀取寫出、進度條異步線程和信號等等,作為第一個gui項目內(nèi)容應該足夠了,業(yè)務邏輯的代碼根據(jù)功能不同也可以隨意替換,算是邁出了第一步

1.1 注意事項

這篇博客可能適合以下老哥閱讀:

  • 有一些python基礎

  • 會裝python環(huán)境和第三方庫安裝

  • 基本沒使用過或者不太懂pyQt5開發(fā)

就像題目所說的那樣,這篇博客是類似于新手教程的東西,雖然寫的是從零開始,但是不打算過多介紹關于環(huán)境和軟件安裝的相關問題(這方面的教程確實太多了)。另外如果你已經(jīng)是python或pyqt的老手了,我不確定我寫的東西會不會對你有用,當然也歡迎留下意見

2. 準備工作

2.1 關于環(huán)境

  • Python:Python 3.7.9 Anaconda 環(huán)境

  • windows 10

  • IDE: Pycharm

  • PyQT5 + QtDesigner

2.2 安裝pyqt庫

2.2.1 新建虛擬環(huán)境(已經(jīng)有python環(huán)境了跳過此步驟)

以管理員身份運行Anaconda Navigator,進入CMD Prompt


輸入下面的命令創(chuàng)建一個python3.7版本的虛擬環(huán)境,環(huán)境名為pygui。這里的pygui可以更改

conda create -n pygui python=3.71

出現(xiàn)如下界面輸入y繼續(xù)安裝,即可成功安裝


安裝完成后輸入下面的語句檢查環(huán)境是否安裝成功

conda env list1

如圖所示,名為pygui已經(jīng)成功安裝


輸入下面的語句激活pygui環(huán)境(可以理解為切換到pygui環(huán)境下)

activate pygui1

如圖所示,當前環(huán)境由base切換到pygui虛擬環(huán)境


至此,新建虛擬環(huán)境就算是成功了。這部分與博客內(nèi)容無關,因此不過多贅述

2.2.2 安裝pyqt的包

注:如果是非Anaconda環(huán)境把下文中出現(xiàn)的conda xxx命令替換為pip xxx
使用命令安裝PyQt5

pip install PyQt51

下圖為正在安裝的界面,如有Proceed輸入y。安裝的速度取決與網(wǎng)速和源,我用的清華源也超時了好幾次,多試幾次如果依然超時建議更換源或者設置超時時間


安裝完成后輸入下面的命令檢查包的安裝情況

conda list1

應該有下圖中的包


python 3.5以上版本安裝成功后還需安裝pyqt5-tools

pip install pyqt5-tools1

安裝成功后虛擬環(huán)境的庫如下圖所示(這里根據(jù)版本不同,包的數(shù)量和名稱可能會略有區(qū)別,只要安裝成功了一般不影響后面使用)


啟動Qtdesigner,直接輸入designer命令即可啟動Qt設計師

designer1

如下圖所示,如果無法啟動則說明安裝有問題。啟動成功后先不要關閉命令窗口,后面編譯ui文件還會用到

2.2.3 使用designer新建demo

創(chuàng)建MainWinodw 界面基本結構如圖所示


在組件菜單里選擇Label拖動到畫布里
雙擊Label組件進入編輯模式
輸入文本信息按回車就編輯成功了
Ctrl + S重命名并保存到桌面


現(xiàn)在桌面上應該有一個.ui類型的文件了,下一步需要將ui文件編譯為py文件。
打開之前的命令窗口,使用cd命令切換到ui文件所在的目錄下,我這里是桌面
使用下面的命令編譯ui文件。注意這里export.ui是我剛才保存的ui文件,如果文件名不是export.ui需要自行替換,export.py是將要生成的py文件,建議設置為與ui文件相同的名稱

pyuic5 -o export.py export.ui1

執(zhí)行成功后當前目錄下應該有一個py文件了,如下圖所示


如果上面的步驟出現(xiàn)錯誤大概率是pyqt包安裝問題

2.3 在pycharm中配置環(huán)境和pyqt插件

1. 關于環(huán)境,使用不同的IDE則需要不同的步驟,只要能讓項目在新建的pygui環(huán)境下運行就行
2. pyqt的插件僅僅是方便在pycharm中使用pyqt的功能,使用命令也能達到相同的效果

2.3.1 新建項目使用虛擬環(huán)境

啟動pycharm ——> New Project 操作步驟如下圖所示


在環(huán)境選擇界面選擇conda虛擬環(huán)境


創(chuàng)建

2.3.2 配置qt插件

項目創(chuàng)建完畢后開始配置qt插件
點擊File ——> Setting
在彈出界面中選擇 Tools下的 External Tools 進行配置,如下圖所示


在彈出的界面中進行如下配置,此為Designer配置


配置如下

Name: QtDesignerGroup: QtProgram: xxxxx\xxxxxx\designer.exeWorking Directory: $ProjectFileDir$1234

這里重點說一下第三步
Program填寫designer.exe的絕對路徑,這里的路徑因人而異,如果跟我一樣是使用Anaconda創(chuàng)建的虛擬環(huán)境那么路徑應該跟下面這條路徑類似

C:\ProgramData\Anaconda3\Library\bin\designer.exe1

如果是使用系統(tǒng)的python環(huán)境那么應該類似于下面這條

C:\Users\xxxx\AppData\Local\Programs\Python\Python37\Lib\site-packages\pyqt5-tools\designer.exe1

配置完成后可在菜單欄 Tools ——> Qt ——> QtDesigner 打開designer,如果無法打開則說明配置有誤,如下


配置Pyuic,如法炮制


配置如下

Name: pyUICGroup: QtProgram: xxxxx\xxxxxx\pyuic5.exeArguments: $FileName$ -o $FileNameWithoutExtension$.pyWorking Directory: $FileDir$12345

同樣,這里的Program也需要根據(jù)自己的路徑修改,Anaconda環(huán)境類似于:

C:\ProgramData\Anaconda3\envs\pygui\Scripts\pyuic5.exe1

如果是使用系統(tǒng)的python環(huán)境那么應該類似于下面這條

C:\Users\xxxx\AppData\Local\Programs\Python\Python37\Scripts\pyuic5.exe1

配置完成后將之前我們生成的ui文件拷貝到項目中,選中ui文件,再使用菜單欄啟動pyuic5編譯ui文件,如下圖所示


注意:一定要選中了ui文件再運行PyUic

2.3.3 運行項目

py文件已經(jīng)能夠編譯出來,接下來就是運行了。
打開我們剛剛編譯好的export.py會發(fā)現(xiàn)里面沒有程序入口的代碼,這是因為PyUic只會生成在designer中定義的東西,所以還需要加入程序入口的代碼。
這里我建議另起一個main.py作為程序入口和業(yè)務邏輯的實現(xiàn),這樣就可以實現(xiàn)UI和業(yè)務邏輯分離,否則一旦修改了UI重新生成就會將之前的py文件全部覆蓋,十分不友好
所以我們新建main.py 加入程序入口相關的代碼
我的main.py代碼如下
注意:xxxxx為剛才生成的py文件名稱,我這里是export,根據(jù)情況替換

import sysfrom PyQt5.QtWidgets import QApplication, QMainWindowimport xxxxxclass Example(QMainWindow): def __init__(self): self.app = QApplication(sys.argv) super().__init__() self.ui = xxxxx.Ui_MainWindow() self.ui.setupUi(self) # 初始化 self.init_ui() # ui初始化 def init_ui(self): # 初始化方法,這里可以寫按鈕綁定等的一些初始函數(shù) self.show()# 程序入口if __name__ == '__main__': e = Example() sys.exit(e.app.exec())

在這里我新建了Example類,借由操作Example來操作export里的Ui_MainWindow對象,這樣做的目的是將業(yè)務邏輯和函數(shù)綁定相關工作全部交給Example,將UI、程序入口、業(yè)務邏輯完全分離,方便拓展,這樣也符合OOP思想。
現(xiàn)在我們終于可以運行這個qt項目了,直接運行main.py文件應當能看到之前新建的ui界面,如圖所示

over

至此,需要的準備工作就結束了,下一篇開始寫詳細的工具制作流程

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
PyCharm+PyQt5+QtDesigner配置
部署 PyQt 5 開發(fā)環(huán)境
Python語言編程系列001----基于PyQt4界面庫,打造PyCharm編程環(huán)境,集成開發(fā)GUI程序的常用工具
Python3+Pycharm+PyQt5環(huán)境搭建步驟
pyqt4學習之一:搭建環(huán)境和入門
python+pycharm+pyqt5+QT Designer前端開發(fā)完整配置攻略
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服