PyQt5编程扩展之资源文件的使用教程

 更新时间:2023年03月03日 10:31:09   作者:会洗碗的CV工程师  
PyQt5支持Qt的资源系统,这是用于在应用程序中嵌入图片和翻译文件等资源的工具,下面这篇文章主要给大家介绍了关于PyQt5编程扩展之资源文件使用的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下

本例运行效果:

 设计Qt窗体 

建立项目

项目路径:e:\baikejia\bkj3-2,项目名QtApp,基类选择QWidget

放一个Group Box

命名为groupBox_Age,title为年龄设置

放三个Label

显示如图

放一个Horizontal Slider

放一个Horizontal Slider,命名为sliderSetAge,minimum属性0,maximum属性为100

放两个Line Edit

分别命名为editAgeInt和editAgeStr

层次结构 

布局

布局前窗体

选中GroupBox,然后点击工具栏的栅格布局按钮

窗体变成这样

放一个Group Box

命名为groupBox_Name,title为姓名设置

放两个Label

放两个Line Edit

分别命名为editNameInput和editNameHello,其中editNameInput的text属性设为Mike

放一个Push Button

命名为btnSetName,text设置为“设置姓名”

层次结构

布局

布局前窗体

选中GroupBox,然后点击工具栏的栅格布局按钮

放一个frame

命名为frame_Button 

在上面放一个Push Button和四个Horizontal Spacer

其中Push Button命名为btnClose,text设置为“关闭” 

层次结构

布局

布局前窗体

选中frame,设定水平布局

窗体总布局

点击窗体空白处,选中窗体,按垂直布局按钮,将窗体总布局设为垂直布局

适当缩小窗体

关闭按钮功能

点Edit Signals/Slots工具,鼠标左键放到关闭按钮上拖到窗口空白处

创建和使用资源文件

新建资源文件

Qt Creator中新建资源文件,命名为res.qrc

 在项目文件目录树中,会自动出现Resources文件组和res.qrc文件

编辑资源文件

在文件res.qrc上点击右键,选择Open In Editor

新建前缀

前缀的意思就是资源的分组

点Add Prefix

显示如下

将前缀改名为icons

新建放资源文件的目录

原QtApp目录文件如下

在这个目录下新建images文件夹

将所有图标文件放到images文件夹里面

添加图标文件

点Add Files

添加如下几个图标文件

点击上方的×,关闭资源编辑器 

引用图标文件

如果要在代码里面使用app.ico图标文件,其引用名称是

:/icons/images/app.ico

使用图标文件

回到窗体编辑器,点击“设置姓名”按钮

在对应的属性框中找到icon属性

点击icon右侧的输入框,点击右侧下拉箭头,然后点选择资源

选择322.bmp当图标

设好后,按钮就有图标了

同样,为关闭按钮选择132.bmp作为图标

资源文件的编译

窗体UI文件用到了资源文件后,只能在Qt目录下进行编译

编译前

编译窗体文件

拷贝编译后的窗体文件和资源文件

将编译后的两个py文件拷贝到e:\baikejia\bkj3-2目录中

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

窗体业务逻辑类的设计

 复制human.py文件 

将3-1中建好的human.py文件复制到e:\baikejia\bkj3-2目录中

 新建Eric6项目 

 新建myWidget.py文件 

采用单继承方法设计一个窗体业务逻辑类QmyWidget,保存在myWidget.py中。代码如下: 

 运行程序

现在里面的按钮都是没有用的,注意看左上角的图标 

设置应用程序图标

增加如上红框内两段代码,运行程序,发现图标变了

 增加如下human相关代码 

年龄设置滚动条

在Qt中

在Eric6中添加代码

设置姓名按钮

在Qt中

在Eric6中添加代码

自定义信号

添加红色框中代码

运行程序

年龄设置

点击年龄滚动条,可以看到下面两个框框内的变化

姓名设置

关闭按钮

点击关闭按钮,程序退出

总结

到此这篇关于PyQt5编程扩展之资源文件的使用的文章就介绍到这了,更多相关PyQt5资源文件的使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 使用pandas两列转换成字典的健和值

    使用pandas两列转换成字典的健和值

    这篇文章主要介绍了使用pandas两列转换成字典的健和值方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • python GUI库图形界面开发之PyQt5菜单栏控件QMenuBar的详细使用方法与实例

    python GUI库图形界面开发之PyQt5菜单栏控件QMenuBar的详细使用方法与实例

    这篇文章主要介绍了python GUI库图形界面开发之PyQt5菜单栏控件QMenuBar的详细使用方法与实例,需要的朋友可以参考下
    2020-02-02
  • 基于Python+OpenCV实现自动扫雷功能

    基于Python+OpenCV实现自动扫雷功能

    相信许多人很早就知道有扫雷这么一款经典的游(显卡测试)戏(软件),扫雷作为一款在Windows9x时代就已经诞生的经典游戏,从过去到现在依然都有着它独特的魅力,所以本文小编给大家介绍了如何使用Python+OpenCV实现自动扫雷效果,感兴趣的朋友可以参考下
    2023-12-12
  • Python制作钉钉加密/解密工具

    Python制作钉钉加密/解密工具

    本文给大家介绍的是使用Python实现钉钉的加密解密工具的核心代码,非常的实用,对于大家学习Python加密解密非常有帮助,希望大家能够喜欢
    2016-12-12
  • Python在固定文件夹批量创建固定后缀的文件(方法详解)

    Python在固定文件夹批量创建固定后缀的文件(方法详解)

    文章讲述了如何使用Python批量创建后缀为.md的文件夹,生成100个,代码中需要修改的路径、前缀和后缀名,并提供了注意事项和代码示例,感兴趣的朋友跟随小编一起看看吧
    2025-01-01
  • Python基于opencv实现的人脸识别(适合初学者)

    Python基于opencv实现的人脸识别(适合初学者)

    OpenCV是一个基于BSD许可开源发行的跨平台计算机视觉库,下面这篇文章主要给大家介绍了关于Python基于opencv实现的人脸识别,文中通过实例代码介绍的非常详细,本文的教程非常适合初学者,需要的朋友可以参考下
    2022-03-03
  • Python进制转换与反汇编实现流程介绍

    Python进制转换与反汇编实现流程介绍

    这篇文章主要介绍了Python进制转换与反汇编的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2022-10-10
  • python-django中的APPEND_SLASH实现方法

    python-django中的APPEND_SLASH实现方法

    这篇文章主要介绍了python-django中的APPEND_SLASH实现方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-06-06
  • 在python中利用try..except来代替if..else的用法

    在python中利用try..except来代替if..else的用法

    今天小编就为大家分享一篇在python中利用try..except来代替if..else的用法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • python包装和授权学习教程

    python包装和授权学习教程

    包装是指对一个已经存在的对象进行系定义加工,实现授权是包装的一个特性,下面这篇文章主要给大家介绍了关于python包装和授权的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-06-06

最新评论