关于PyQt5主窗口图标显示问题汇总
作者:aziji 发布时间:2022-03-27 08:23:18
标签:PyQt5,主窗口,图标
窗口程序的开发流程如下:
1. 先通过qt designer设置界面并将程序图标设置好,通过在designer中按ctrl + R 进行预览可以看到窗口左上角的图标,然后保存
2. 通过pyuic5和pyrcc5命令将ui文件和qrc文件转换为py文件
3.然后在主程序中将界面显示出来,源码如下:
class Main(QMainWindow, Ui_MainWindow, QWidget):
def __init__(self, parent=None):
super(Main, self).__init__(parent)
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
self.ui.mem_plot.setVisible(False)
self.setWindowTitle("app")
self.setWindowIcon(QIcon('/icon/windows_icon.ico'))
运行之后显示出来的界面中图标并没有正常显示出来
将第9行的进行注释掉再运行,图标正常正常显示了,说明通过qt designer设置是生效的,关键就在于第9行出问题,QIcon这个方法是要带上绝对路径或者相对路径,再看看我写的明显存在一个错误,文件的路径不正确,要么将第9行注释掉,要么改为正确的相对路径,下面将第9行正确的采用相对路径方式列出来如下:
self.setWindowIcon(QIcon('./icon/windows_icon.ico'))
再次运行图标正常显示出来
知识点扩展:PyQt5 Designer==5.15.2.3.0.2 启动新路径
切换为python8并更新到最新的pyqt5-tools, qt designer新路径为:C:\Program Files\Python38\Lib\site-packages\qt5_applications\Qt\bin
然后更新Pycharm中qt designer的启动路径如下:
来源:https://www.cnblogs.com/aziji/p/14538746.html
0
投稿
猜你喜欢
- 一起画图吧为什么突然想搞这个画图软件呢不瞒各位,是因为最近接到了一个很小很小很小小得不能再小的小项目就是基于Tkinter,做一个简易的画图
- (function($) { (function($) { $.preload = function(data, cfg) { return
- 以下函数可用于替换php内置的is_writable函数//可用于替换php内置的is_writable函数function isWrita
- 今天修改之前实习小伙伴写的js代码的时候,遇到修改后页面未发生变化的问题。因为我是web开发小白,所以上网查了一波,得以解决~~初次进行we
- 摘要在Nginx和uWSGI还没配置时,单独在url.py使用apscheduler设置定时任务,使用python manage.py ru
- ASP中从数据库读取二进制文件数据代码:<%driver_name1="DRIVER={Microsoft&n
- 在php中判断一个文件或目录是否存在,大家通常都会想到is_file和file_exists两个函数。但这两个函数再判断一个远程url文件是
- 我就废话不多说了,大家还是直接看代码吧!#coding=utf-8import threadingimport timeimport cx_
- 如果要得到返回值,需要用Command的方法。 首先说明,返回值有两种。一种是在存储过程中直接return一个值,就象C和VB的函数返回值那
- <!-- -----------[test]表生成脚本---------------
- 汉字转换为UTF-8的一段代码终于找到这段代码了,一个ASP写的中文转UTF-8,大家可以试试function chinese2u
- 本文实例讲述了python 协程 gevent原理与用法。分享给大家供大家参考,具体如下:geventgreenlet已经实现了协程,但是这
- 因客户需求,要把数据库里的索引编号做成五位长度的,且能自动累加编号,我只会在SQL中使用Identity自动编号:Create Table
- 1、问题现象:有个网站是通过session验证的,前端时间访问正常,但近期后台session老是失效很快,根本没法操作,我设置timeout
- 要读懂这些代码主要是要了解ASP中操作二进制数据的对象ADODB.Stream!本程序主要用的就是Adodb.Stream,如果你有这个基础
- 本文实例讲述了Python实现基于HTTP文件传输的方法。分享给大家供大家参考。具体实现方法如下:一、问题:因为需要最近看了一下通过POST
- 本文介绍了redis之django-redis的简单缓存使用,分享给大家,具体如下:自定义连接池这种方式跟普通py文件操作redis一样,代
- 一、基本概念APScheduler全称Advanced Python Scheduler 作用为在指定的时间规则执行指定的作业。指定时间规则
- 因为写js经常需要用到访问样式,我们常用的做法是通过 DOM.style.XXX来读写样式信息的。可是DOM.style这种写法只能访问&l
- class Node: def __init__(self,dataval=None): self.d