pyqt5在win10下用pyinstaller打包成exe,打包后的界面风格变成了win98解决办法

例如:

直接调试界面:

pyqt5在win10下用pyinstaller打包成exe,打包后的界面风格变成了win98解决办法_第1张图片

用pyinstaller打包后的界面:

pyinstaller -F -w Ui_hello.py

pyqt5在win10下用pyinstaller打包成exe,打包后的界面风格变成了win98解决办法_第2张图片

问题在于少了样式文件。

如果不用-F的话,可以去 Python 目录下找 Lib\site-packages\PyQt5\Qt\plugins\styles, 把整个目录拷贝到生成目录的对应位置。

如果要用-F的话,那么最好创建spec文件,然后添加要复制的文件,比如:

a = Analysis(...)
a.datas.extend([
    ('PyQt5/Qt/plugins/styles/qwindowsvistastyle.dll', 'src/styles/qwindowsvistastyle.dll', 'BINARY')
])


作者:shuhari
链接:https://www.zhihu.com/question/271879457/answer/364090273
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
另外,还有另外一个解决方案,但没有用上,还是记一下以备无患:https://github.com/pyinstaller/pyinstaller/pull/3505


你可能感兴趣的:(Qt)