import sys
import os
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtGui import QIcon
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setGeometry(300,300,300,220)
self.setWindowTitle('Icon')
path = os.path.join(os.path.dirname(sys.modules[__name__].__file__), 'icon_1.png')
self.setWindowIcon(QIcon(path))
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
我也使用相对路径
self.setWindowIcon(QIcon( ‘icon_1.png’))
我确定icon_1.png在目录中.但结果总是这样:
那我在哪里弄错了?我是PyQt和StackOverflow以及英语的新手…希望帖子有效.
先感谢您.
最佳答案 setWindowIcon是QApplication的一种方法,不适用于QWidget和朋友
以下是测试脚本的工作版本:
import sys
import os
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtGui import QIcon
class Example(QWidget):
def __init__(self):
super(Example, self).__init__()
self.initUI()
def initUI(self):
self.setGeometry(300,300,300,220)
self.setWindowTitle('Icon')
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
path = os.path.join(os.path.dirname(sys.modules[__name__].__file__), 'icon_1.png')
app.setWindowIcon(QIcon(path))
ex = Example()
sys.exit(app.exec_())