一、概述

在Qt Designer中要使用图片资源有三种方法:通过图像文件指定、通过资源文件指定、通过theme主题方式指定,对应的设置界面在需要指定图像的属性栏如windowIcon中通过点击属性设置栏的倒三角按钮触发,如下图:



通过主题方式指定图像老猿还没有弄明白,暂时也没准备去研究。在这里介绍前2种方法。

二、指定图像文件作为资源

选择上图弹窗的“Choose File”就可以选定一个图片文件作为资源,图片文件包括图像格式(.bmp、.jpg、.gif等大多数图像格式文件)或者按钮图像格式(.ico)。如下图设定“播放.ico”作为应用窗口的图标:



指定后指定文件被作为Normal off 状态的图标,并自动计算得出其他状态的图标,当然也可以单独设定某种状态的图标为其他图像文件。

三、通过资源文件指定对应资源作为部件的资源

除了指定图像文件作为资源外,Qt Designer还支持将所有图像资源属性保存到资源文件中,再在部件属性设置时从资源文件中选择资源。

3.1 新建资源文件

通过部件的图像资源属性设置时选择从资源文件(Choose Resource)选取资源时,会弹出如下对话窗:



点击上图中的铅笔型Edit Resources按钮,进入资源编辑界面,如下图:



点击蓝色标记按钮新建一个资源文件如“测试资源”,命名保存到开发者指定的目录,保存后如图:



点击上图蓝色标记的Add Prefix按钮,新建对应的资源前缀或路径,这可以认为是应用需要用到的一个资源目录,具体名字根据自己规划的资源来命名,如要建一个图像资源目录img和一个ico资源目录,可以如下图这种命名:



点击上图蓝色标记的Add Files按钮,将不同的图形或按钮文件添加到对应的目录下,如图:





点击OK保存资源文件。这就完成了资源文件的编辑。

3.2 从资源文件引用资源设置部件的资源属性

在部件属性设置的界面,点击Choose Resource从资源文件选取资源,如图:



上图中选择了add.png图像文件作为windowIcon,点击ok保存,此时属性界面如图:

3.3 使用Pyrcc将资源文件转成py文件

保存UI界面,然后进入Pycharm界面,可见工程文件情况如下图:



资源文件保存到了工程中,然后选中资源文件,鼠标右键调出《第15.6节 PyQt5安装与配置》配置的Pyrcc进行资源转py文件处理。如图:



转换成功后工程文件多了如下图黄色标记的py文件。

3.4 将UI文件转换成Py文件

转换后会在UI生成的py文件中最后部分自动import资源转换的py文件。

这样在PyQt中使用资源文件设置图像属性的资源过程就完成了,如果直接将属性设置为图像文件则无需这样复杂,但可能加载慢一点、管理不好管理。


博客地址:https://blog.csdn.net/LaoYuanPython

老猿Python博客文章目录:https://blog.csdn.net/LaoYuanPython/article/details/98245036

最新文章

  1. webParts与Web部件
  2. XIII Open Cup named after E.V. Pankratiev. GP of Ukraine
  3. POJ 2155 Matrix(二维树状数组+区间更新单点求和)
  4. CI中PHP写法规范(不断更新)
  5. 用NativeScript创建JavaScript原生移动应用
  6. Thread系列——Thread.Sleep(0)
  7. 模拟键盘输入 : SendMessage, keybd_event, PostKeybdMessage
  8. jQuery的文档操作方法
  9. 查看DB文件的空间使用情况
  10. HTML5周记(二)
  11. Web自动化之Headless Chrome测试框架集成
  12. 如何解决svn清理失败 不能更新 cleanup失败 cleanup乱码 更新乱码 svn更新提示清理 清理乱码不能清理 svn故障修复SVN cleanup 陷入死循环 svn cleanup时遇到错误怎么办
  13. JMeter-性能测试监控(解决.sh文件的启动)
  14. .Net #if DEBUG调试模式代码使用
  15. 使用MSF生成shellcode
  16. mysql的级联复制和多源复制
  17. 63、使用Timer类来实现定时任务
  18. 转:MyISAM 和 InnoDB 讲解
  19. EF调用存储过程查询表中的部分字段,报数据读取器与指定的“AdventureWorksDWModel.Student”不兼容。某个类型为“Age”的成员在同名的数据读取器中没有对应的列。
  20. Halcon 笔记1

热门文章

  1. mybatis拦截器 修改mybatis返回结果集中的字段的值
  2. SQL:获取每个key下最新创建的记录
  3. CV 履历 格式
  4. []Spring创建Bean的过程
  5. UNP——第六章,多路转接IO——select
  6. rgw的rgw_thread_pool_size配置调整
  7. spring-boot-starter-parent和spring-boot-dependencies
  8. webug第三关:你看到了什么?
  9. ASP.NET Core管道详解[3]: Pipeline = IServer + IHttpApplication
  10. 工作三年终于社招进字节跳动!字节跳动,阿里,腾讯Java岗面试经验汇总