使用PyQt5設(shè)計(jì)GUI實(shí)現(xiàn)程序圖形界面設(shè)計(jì)
一、熟悉designer——設(shè)計(jì)界面的神器
designer是一個(gè)強(qiáng)大的GUI設(shè)計(jì)工具,設(shè)計(jì)完之后還可以自動(dòng)生成代碼,然后我們將這些代碼轉(zhuǎn)換成python代碼就可以了,是不是很方便!!
1.首先打開(kāi)designer。
還記得我們?cè)趐ycharm之前創(chuàng)建的exteranl tools嗎?點(diǎn)擊打開(kāi)designer。
2.創(chuàng)建窗口
這里有5種常見(jiàn)的窗口類型,可以自己打開(kāi)看看是個(gè)什么樣子的窗口
Dialog with Buttons Bottom:按鈕在底部的對(duì)話框窗口Dialog with Buttons Right:按鈕在右上角的對(duì)話框窗口Dialog without Buttons:沒(méi)有按鈕的對(duì)話框窗口Main Window:一個(gè)帶菜單,??看翱诤蜖顟B(tài)欄的主窗口Widget:通用窗口
設(shè)計(jì)窗口中用的最多的是Main Window。
3.熟悉各部功能區(qū)域
二、設(shè)計(jì)自己的第一個(gè)GUI。
1.在designer中拖動(dòng)控件來(lái)完善窗口程序。
然后繼續(xù)拖動(dòng),調(diào)整大小。
不同控件有不同的功能,大家可以自己拖動(dòng)到mainwindow上看看它們都能干些什么。
2.保存為.ui文件
3.將.ui文件轉(zhuǎn)換成.py文件
還記得之前配置的小工具嗎?PyUIC
我們來(lái)試試吧!
先選中要轉(zhuǎn)換的.ui文件,然后點(diǎn)擊PyUIC
Process finished with exit code 0
即表示轉(zhuǎn)換完成,在當(dāng)前目錄下可以找到csdn_article.py文件。
4.添加程序入口
這是我們發(fā)現(xiàn)運(yùn)行沒(méi)有反應(yīng)。
為什么呢?我們剛剛設(shè)計(jì)的界面轉(zhuǎn)換成.py文件不行?
其實(shí)原因是我們沒(méi)有為程序添加入口。
在代碼末尾加上:
import sys if __name__ == '__main__': app = QtWidgets.QApplication(sys.argv) MainWindow = QtWidgets.QMainWindow() # 創(chuàng)建窗體對(duì)象 ui = Ui_MainWindow() # 創(chuàng)建PyQt設(shè)計(jì)的窗體對(duì)象 ui.setupUi(MainWindow) # 調(diào)用PyQt窗體的方法對(duì)窗體對(duì)象進(jìn)行初始化設(shè)置 MainWindow.show() # 顯示窗體 sys.exit(app.exec_()) # 程序關(guān)閉時(shí)退出進(jìn)程
現(xiàn)在再運(yùn)行就可以啦!
雖然界面很簡(jiǎn)單,但是,我們已經(jīng)掌握了設(shè)計(jì)GUI的基本流程了!千里之行始于足下。讓我們?cè)俳釉賲枺弦粚訕恰?/p>
通常我們使用的軟件,都是多窗口組成的,由登錄界面登錄再跳轉(zhuǎn)到相應(yīng)的功能界面,那么窗口跳轉(zhuǎn)是怎么實(shí)現(xiàn)的呢? 更多關(guān)于PyQt5設(shè)計(jì)GUI程序圖形界面的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python 實(shí)現(xiàn)王者榮耀中的敏感詞過(guò)濾示例
今天小編就為大家分享一篇Python 實(shí)現(xiàn)王者榮耀中的敏感詞過(guò)濾示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-01-01Python基于Flask框架配置依賴包信息的項(xiàng)目遷移部署
這篇文章主要介紹了Python基于Flask框架配置依賴包信息的項(xiàng)目遷移部署小技巧,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2018-03-03python爬蟲(chóng) 批量下載zabbix文檔代碼實(shí)例
這篇文章主要介紹了python爬蟲(chóng) 批量下載zabbix文檔代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08Python可變參數(shù)會(huì)自動(dòng)填充前面的默認(rèn)同名參數(shù)實(shí)例
今天小編就為大家分享一篇Python可變參數(shù)會(huì)自動(dòng)填充前面的默認(rèn)同名參數(shù)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-11-11Python中tkinter的用戶登錄管理的實(shí)現(xiàn)
這篇文章主要介紹了Python中tkinter的用戶登錄管理的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04使用python爬取B站千萬(wàn)級(jí)數(shù)據(jù)
B站我想大家都熟悉吧,其實(shí) B 站的爬蟲(chóng)網(wǎng)上一搜一大堆。不過(guò)紙上得來(lái)終覺(jué)淺,絕知此事要躬行,我碼故我在。2018-06-06使用with torch.no_grad():顯著減少測(cè)試時(shí)顯存占用
這篇文章主要介紹了使用with torch.no_grad():顯著減少測(cè)試時(shí)顯存占用問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08django組合搜索實(shí)現(xiàn)過(guò)程詳解(附代碼)
這篇文章主要介紹了django組合搜索實(shí)現(xiàn)過(guò)程詳解(附代碼),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08