PyQt5編程擴(kuò)展之資源文件的使用教程
本例運(yùn)行效果:

設(shè)計(jì)Qt窗體
建立項(xiàng)目
項(xiàng)目路徑:e:\baikejia\bkj3-2,項(xiàng)目名QtApp,基類選擇QWidget


放一個(gè)Group Box
命名為groupBox_Age,title為年齡設(shè)置


放三個(gè)Label
顯示如圖

放一個(gè)Horizontal Slider
放一個(gè)Horizontal Slider,命名為sliderSetAge,minimum屬性0,maximum屬性為100



放兩個(gè)Line Edit
分別命名為editAgeInt和editAgeStr



層次結(jié)構(gòu)

布局
布局前窗體

選中GroupBox,然后點(diǎn)擊工具欄的柵格布局按鈕

窗體變成這樣

放一個(gè)Group Box
命名為groupBox_Name,title為姓名設(shè)置


放兩個(gè)Label

放兩個(gè)Line Edit
分別命名為editNameInput和editNameHello,其中editNameInput的text屬性設(shè)為Mike



放一個(gè)Push Button
命名為btnSetName,text設(shè)置為“設(shè)置姓名”


層次結(jié)構(gòu)

布局
布局前窗體

選中GroupBox,然后點(diǎn)擊工具欄的柵格布局按鈕

放一個(gè)frame

命名為frame_Button

在上面放一個(gè)Push Button和四個(gè)Horizontal Spacer

其中Push Button命名為btnClose,text設(shè)置為“關(guān)閉”


層次結(jié)構(gòu)

布局
布局前窗體

選中frame,設(shè)定水平布局

窗體總布局
點(diǎn)擊窗體空白處,選中窗體,按垂直布局按鈕,將窗體總布局設(shè)為垂直布局

適當(dāng)縮小窗體

關(guān)閉按鈕功能
點(diǎn)Edit Signals/Slots工具,鼠標(biāo)左鍵放到關(guān)閉按鈕上拖到窗口空白處

創(chuàng)建和使用資源文件
新建資源文件
Qt Creator中新建資源文件,命名為res.qrc



在項(xiàng)目文件目錄樹中,會(huì)自動(dòng)出現(xiàn)Resources文件組和res.qrc文件

編輯資源文件
在文件res.qrc上點(diǎn)擊右鍵,選擇Open In Editor

新建前綴
前綴的意思就是資源的分組
點(diǎn)Add Prefix

顯示如下

將前綴改名為icons

新建放資源文件的目錄
原QtApp目錄文件如下

在這個(gè)目錄下新建images文件夾

將所有圖標(biāo)文件放到images文件夾里面

添加圖標(biāo)文件
點(diǎn)Add Files

添加如下幾個(gè)圖標(biāo)文件

點(diǎn)擊上方的×,關(guān)閉資源編輯器

引用圖標(biāo)文件
如果要在代碼里面使用app.ico圖標(biāo)文件,其引用名稱是
:/icons/images/app.ico
使用圖標(biāo)文件
回到窗體編輯器,點(diǎn)擊“設(shè)置姓名”按鈕

在對(duì)應(yīng)的屬性框中找到icon屬性

點(diǎn)擊icon右側(cè)的輸入框,點(diǎn)擊右側(cè)下拉箭頭,然后點(diǎn)選擇資源

選擇322.bmp當(dāng)圖標(biāo)

設(shè)好后,按鈕就有圖標(biāo)了

同樣,為關(guān)閉按鈕選擇132.bmp作為圖標(biāo)

資源文件的編譯
窗體UI文件用到了資源文件后,只能在Qt目錄下進(jìn)行編譯
編譯前

編譯窗體文件

拷貝編譯后的窗體文件和資源文件
將編譯后的兩個(gè)py文件拷貝到e:\baikejia\bkj3-2目錄中

打開Ui_Widget.py文件,可以看到文件最后有一行import res_rc

窗體業(yè)務(wù)邏輯類的設(shè)計(jì)
復(fù)制human.py文件
將3-1中建好的human.py文件復(fù)制到e:\baikejia\bkj3-2目錄中

新建Eric6項(xiàng)目


新建myWidget.py文件
采用單繼承方法設(shè)計(jì)一個(gè)窗體業(yè)務(wù)邏輯類QmyWidget,保存在myWidget.py中。代碼如下:

運(yùn)行程序

現(xiàn)在里面的按鈕都是沒有用的,注意看左上角的圖標(biāo)
設(shè)置應(yīng)用程序圖標(biāo)

增加如上紅框內(nèi)兩段代碼,運(yùn)行程序,發(fā)現(xiàn)圖標(biāo)變了

增加如下human相關(guān)代碼

年齡設(shè)置滾動(dòng)條
在Qt中



在Eric6中添加代碼

設(shè)置姓名按鈕
在Qt中



在Eric6中添加代碼

自定義信號(hào)
添加紅色框中代碼

運(yùn)行程序
年齡設(shè)置
點(diǎn)擊年齡滾動(dòng)條,可以看到下面兩個(gè)框框內(nèi)的變化


姓名設(shè)置

關(guān)閉按鈕
點(diǎn)擊關(guān)閉按鈕,程序退出


總結(jié)
到此這篇關(guān)于PyQt5編程擴(kuò)展之資源文件的使用的文章就介紹到這了,更多相關(guān)PyQt5資源文件的使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python GUI庫圖形界面開發(fā)之PyQt5菜單欄控件QMenuBar的詳細(xì)使用方法與實(shí)例
這篇文章主要介紹了python GUI庫圖形界面開發(fā)之PyQt5菜單欄控件QMenuBar的詳細(xì)使用方法與實(shí)例,需要的朋友可以參考下2020-02-02
基于Python+OpenCV實(shí)現(xiàn)自動(dòng)掃雷功能
相信許多人很早就知道有掃雷這么一款經(jīng)典的游(顯卡測試)戲(軟件),掃雷作為一款在Windows9x時(shí)代就已經(jīng)誕生的經(jīng)典游戲,從過去到現(xiàn)在依然都有著它獨(dú)特的魅力,所以本文小編給大家介紹了如何使用Python+OpenCV實(shí)現(xiàn)自動(dòng)掃雷效果,感興趣的朋友可以參考下2023-12-12
Python在固定文件夾批量創(chuàng)建固定后綴的文件(方法詳解)
文章講述了如何使用Python批量創(chuàng)建后綴為.md的文件夾,生成100個(gè),代碼中需要修改的路徑、前綴和后綴名,并提供了注意事項(xiàng)和代碼示例,感興趣的朋友跟隨小編一起看看吧2025-01-01
Python基于opencv實(shí)現(xiàn)的人臉識(shí)別(適合初學(xué)者)
OpenCV是一個(gè)基于BSD許可開源發(fā)行的跨平臺(tái)計(jì)算機(jī)視覺庫,下面這篇文章主要給大家介紹了關(guān)于Python基于opencv實(shí)現(xiàn)的人臉識(shí)別,文中通過實(shí)例代碼介紹的非常詳細(xì),本文的教程非常適合初學(xué)者,需要的朋友可以參考下2022-03-03
Python進(jìn)制轉(zhuǎn)換與反匯編實(shí)現(xiàn)流程介紹
這篇文章主要介紹了Python進(jìn)制轉(zhuǎn)換與反匯編的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2022-10-10
python-django中的APPEND_SLASH實(shí)現(xiàn)方法
這篇文章主要介紹了python-django中的APPEND_SLASH實(shí)現(xiàn)方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-06-06
在python中利用try..except來代替if..else的用法
今天小編就為大家分享一篇在python中利用try..except來代替if..else的用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-12-12
python包裝和授權(quán)學(xué)習(xí)教程
包裝是指對(duì)一個(gè)已經(jīng)存在的對(duì)象進(jìn)行系定義加工,實(shí)現(xiàn)授權(quán)是包裝的一個(gè)特性,下面這篇文章主要給大家介紹了關(guān)于python包裝和授權(quán)的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-06-06

