窗口程序的开发流程如下:
1. 先通过qt designer设置界面并将程序图标设置好,通过在designer中按ctrl + R 进行预览可以看到窗口左上角的图标,然后保存
2. 通过pyuic5和pyrcc5命令将ui文件和qrc文件转换为py文件
3.然后在主程序中将界面显示出来,源码如下:
1 class Main(QMainWindow, Ui_MainWindow, QWidget): 2 3 def __init__(self, parent=None): 4 super(Main, self).__init__(parent) 5 self.ui = Ui_MainWindow() 6 self.ui.setupUi(self) 7 self.ui.mem_plot.setVisible(False) 8 self.setWindowTitle("app") 9 self.setWindowIcon(QIcon('/icon/windows_icon.ico'))
运行之后显示出来的界面中图标并没有正常显示出来
将第9行的进行注释掉再运行,图标正常正常显示了,说明通过qt designer设置是生效的,关键就在于第9行出问题,QIcon这个方法是要带上绝对路径或者相对路径,再看看我写的明显存在一个错误,文件的路径不正确,要么将第9行注释掉,要么改为正确的相对路径,下面将第9行正确的采用相对路径方式列出来如下:
self.setWindowIcon(QIcon('./icon/windows_icon.ico'))
再次运行图标正常显示出来