为什么python不显示在路径图标中?

时间:2019-02-19 04:33:16

标签: python pyqt pyqt5 python-3.7 qicon

我写了下面的代码

import sys,time
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *

app = QApplication(sys.argv)
sys.path.append(r"C:\Users\hpaalm\Desktop")
a=QPushButton()
a.setIcon(QIcon('1.png'))
a.show()
app.exec_()

当我在IDE中运行它时,它显示我的图标,但是在CMD中运行它时,它不显示图标。有什么问题吗?

python C:\Users\hpaalm\Desktop\a.py

1 个答案:

答案 0 :(得分:0)

sys.path包含python导入模块的路径列表,该路径不用于导入文件,图标或类似资源。相反,最好创建一个函数,该函数将目录路径与文件名绑定在一起,并返回图标的完整路径:

import os
import sys
from PyQt5 import QtGui, QtWidgets

ICON_DIR = r"C:\Users\hpaalm\Desktop"

def get_path_icon(filename):
    return os.path.join(ICON_DIR, filename)

if __name__ == '__main__':

    app = QtWidgets.QApplication(sys.argv)

    a = QtWidgets.QPushButton()
    a.setIcon(QtGui.QIcon(get_path_icon('1.png')))
    a.show()
    sys.exit(app.exec_())