如何使用PyQT4和PyInstaller设置窗口和任务栏图标?

时间:2018-01-02 19:08:30

标签: python python-2.7 pyqt pyqt4

我正在使用PyQT4和Python 2.7开发一个应用程序。我正在使用PyInstaller将应用程序编译/构建为可执行文件。

我遇到的问题是每当我使用PyInstaller使用其 - icon = icon.ico (例如)构建应用程序时,它会为应用程序提供一个图标。但是,不显示任务栏图标和窗口图标。

当我不使用参数( - icon ),而是使用以下行时,应用程序没有图标,但任务栏图标和窗口图标都有正确的图标。< / p>

app.setWindowIcon(QtGui.QIcon(':/images/Images/icon.ico'))
LoginMainWindow.setWindowIcon(QtGui.QIcon(':/images/Images/icon.ico'))

如果我将参数和那些代码行组合在一起,则应用程序会显示一个图标,但不会显示任务栏图标和窗口图标。

1 个答案:

答案 0 :(得分:0)

我知道这是一个较晚的答案,但让它帮助有相同问题的其他人。首先,使用PyQt5PyQt Designerpyuic5pyinstaller。使用Designer创建您的UI。在其中的“窗口选项”中,您可以设置窗口图标。您可以使用.ico.png.jpg等,但可以使用.ico格式。之后,从设计器中保存.ui文件,并使用pyuic5.ui文件转换为.py文件。我使用了以下命令pyuic5 myui.ui --o=ui.py。之后,您需要转到ui.py,找到icon并将相对路径更改为绝对路径。然后继续构建您的应用程序。当您需要创建.exe文件的步骤时,请使用pyinstaller。我使用了以下命令pyinstaller --onefile --noconsole --icon=icon.ico --name=appName app.py。构建.exe应用后,您将找到dist文件夹。里面有您的.exe应用。尝试运行它。应用程序窗口和任务栏中应该有一个图标。重要提示:切记,每次在Designer中更改.ui文件和/或进行转换时,都会丢失之前所做的更改,因此需要再次进行更改。希望对您有帮助