在macOS下,刚学习PyQt5遇到图标无法显示问题. 先上代码,看下代码就明白了。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
import sys from PyQt5.QtWidgets import QApplication, QWidget from PyQt5.QtGui import QIcon, QPixmap from PyQt5.QtCore import QFile # 面向对象编程 class main_widget(QWidget): # 继承自 QWidget类 def __init__(self): super().__init__() self.initUI() # 创建窗口 def initUI(self): # 在此处添加 窗口控件 self.setGeometry(300, 200, 600, 500) # 屏幕上坐标(x, y), 和 窗口大小(宽,高) self.setWindowTitle("第一个qt5窗口") # self.setWindowIcon(QIcon("logo/m4.png")) # 设置窗口图标 self.show() if __name__ == "__main__": app = QApplication(sys.argv) path = 'logo/m4.png' print(QFile.exists(path)) app.setWindowIcon(QIcon(path)) # MAC 下 程序图标是显示在程序坞中的, 切记; window = main_widget() sys.exit(app.exec()) # 退出主循环 |
setWindowIcon是QApplication的方法,而不是QWidget的,所以使用app.setWindowIcon设置是对的。
注意:在macOS下,图标是显示在程序坞中的!!!