詳解PyCharm+QTDesigner+PyUIC使用教程
我們在PyCharm安裝配置Qt Designer+PyUIC教程中已配置好了PyCharm+QTDesigner+PyUIC環(huán)境
這里在此基上我們演示如何使用這些工具,編寫一個圖形界面程序:
程序主界面上有一個按鈕和一個編緝框,點(diǎn)擊按鈕就在編緝框中顯示“你點(diǎn)擊了按鈕”
一、使用QT Desinger設(shè)計程序主界面
2.1 設(shè)計界面
在PyCharm中創(chuàng)建一個項(xiàng)目,然后點(diǎn)擊“Tools”--“External Tools”--“QTDesinger”打開QT Desinger


然后向Form中拖入一個“Push Button”和一個“Text Edit”

2.2 指定點(diǎn)擊事件及其響應(yīng)函數(shù)
在工具欄點(diǎn)擊信號-槽編緝按鈕----光標(biāo)移動到“PushButton”按鈕上----鼠標(biāo)左鍵點(diǎn)擊“PushButton”不要松開--拖動光標(biāo)到Form的任一位置后再松開鼠標(biāo)左鍵

經(jīng)過上邊的操作就出現(xiàn)了如下界面,“pushButton”側(cè)選中“click()”,“Form”側(cè)點(diǎn)擊“Edit”

在上邊“Slots”點(diǎn)擊綠色“+”按鈕,指定click事件的響應(yīng)函數(shù),名稱隨意定比如我這里命名為“pushButton_click()”
(我們這里只是指定事件與響應(yīng)函數(shù)的關(guān)聯(lián)關(guān)系,函數(shù)是還沒實(shí)現(xiàn)的,后邊我們自行實(shí)現(xiàn))


這樣界面設(shè)計和事件關(guān)聯(lián)就完成了,我們下來選擇保存,將文件保存到項(xiàng)目的根目錄下

二、使用PyUIC將文件轉(zhuǎn)成python代碼
關(guān)閉QT Designer回到PyCharm,查看項(xiàng)目,可以看到只有剛才保存的PyQT_Form.ui文件而且該文件在PyCharm是打不開的
我們需要將這個文件轉(zhuǎn)成.py代碼才能使用

選中“PyQT_Form”,在其上點(diǎn)擊鼠標(biāo)右鍵,到“External Tools”中點(diǎn)擊“PyUIC”

完后再看項(xiàng)目文件,就可以看到多了一個“PyQT_Form.py”,雙擊查看其內(nèi)容如下:

三、實(shí)現(xiàn)程序
應(yīng)該來說我們只要在上邊的“PyQT_Form.py”中,將需要的包導(dǎo)入---添加pushButton_click()函數(shù)實(shí)現(xiàn)代碼----實(shí)例化Ui_Form類,實(shí)現(xiàn)這三步程序應(yīng)該就差不多了
但是PyQT_Form.py是PyUIC文件按照“PyQT_Form.ui”生成的,如果我們需要去調(diào)整PyQT_Form.ui(比如調(diào)整按鈕位置調(diào)整文本框大小,后續(xù)調(diào)整界面在實(shí)際編程中基本是必然需求)
調(diào)整完后重新生成PyQT_Form.py時,PyUIC可不會管當(dāng)前我們已經(jīng)在PyQT_Form.py中寫了什么代碼,舊PyQT_Form.py會直接被新PyQT_Form.py覆蓋
也就是說,所有邏輯代碼我們都不應(yīng)當(dāng)寫入PyQT_Form.py文件(或者叫不要動PyQT_Form.py文件),我們新建一個文件在里邊創(chuàng)建一個子類(MyPyQT_Form)繼承PyQT_Form.py中的Ui_Form
3.1 實(shí)現(xiàn)代碼
在項(xiàng)目中新建一個.py文件,寫入如下代碼
import sys
from PyQt5 import QtWidgets
from PyQT_Form import Ui_Form
class MyPyQT_Form(QtWidgets.QWidget,Ui_Form):
def __init__(self):
super(MyPyQT_Form,self).__init__()
self.setupUi(self)
#實(shí)現(xiàn)pushButton_click()函數(shù),textEdit是我們放上去的文本框的id
def pushButton_click(self):
self.textEdit.setText("你點(diǎn)擊了按鈕")
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
my_pyqt_form = MyPyQT_Form()
my_pyqt_form.show()
sys.exit(app.exec_())
3.2 運(yùn)行演示
右鍵選擇運(yùn)行

運(yùn)行界面如下

點(diǎn)擊“PushButton”后界面如下

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- PyQt 圖解Qt Designer工具的使用方法
- python GUI庫圖形界面開發(fā)之PyQt5 Qt Designer工具(Qt設(shè)計師)詳細(xì)使用方法及Designer ui文件轉(zhuǎn)py文件方法
- python之PySide2安裝使用及QT Designer UI設(shè)計案例教程
- Qt Designer的簡單使用方法
- PyQT5之使用QT?Designer創(chuàng)建基本窗口方式
- PyQt5使用QtDesigner實(shí)現(xiàn)多界面切換程序的全過程
- Pyside6開發(fā)使用Qt?Designer的示例代碼
- 使用Qt Designer開發(fā)的實(shí)現(xiàn)示例
相關(guān)文章
Python 解析庫json及jsonpath pickle的實(shí)現(xiàn)
這篇文章主要介紹了Python 解析庫json及jsonpath pickle的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
Python機(jī)器學(xué)習(xí)工具scikit-learn的使用筆記
這篇文章主要介紹了Python機(jī)器學(xué)習(xí)工具scikit-learn的使用筆記,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2021-01-01
對django views中 request, response的常用操作詳解
今天小編就為大家分享一篇對django views中 request, response的常用操作詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07

