python - pyinstaller 不显示图像和图标

标签 python tkinter pyinstaller

我阅读了许多关于如何通过修改 spec 文件来包含图像和图标的教程,但我没有成功。我编写了一个程序,我想使用 pyinstaller 使其可执行并在其他计算机上运行它。 pyinstaller 不在主 .exe 文件中包含图像和图标文件。当我在自己的电脑上运行编译后的 .exe 文件时,它工作得很好,但是当我尝试在其他电脑上运行相同的文件时,它会抛出错误。请建议我该怎么做,这让我失去了理智.. 提前致谢.. 下面是我的 .spec 文件代码和我的 python 脚本(部分)

.spec 文件:

# -*- mode: python -*-
a = Analysis(['English-Nepali.py'],
             pathex=['C:\\Users\\User\\Desktop\\Dict'],
             hiddenimports=[],
             hookspath=None,
             runtime_hooks=None)
pyz = PYZ(a.pure)
exe = EXE(pyz,
          a.scripts,
          exclude_binaries=True,
          name='English-Nepali.exe',
          debug=False,
          strip=None,
          upx=True,
          console=True )
coll = COLLECT(exe,
               a.binaries,
               a.zipfiles,
               a.datas,
               strip=None,
               upx=True,
               name='English-Nepali')

程序中使用图像和图标的部分,ico 和 jpg 文件都存在于目录中:

class Demo2:
    def __init__(self, master):
        self.master = master
        self.master.geometry("640x250+200+200")
        master.resizable(False,False)
        self.master.title('About')
        self.img = Image.open(r"C:\Users\User\Desktop\Dict\rotunda.jpg")
        self.tetras = ImageTk.PhotoImage(self.img)

def main():

    root = tk.Tk()
    ex = Example(root)
    root.iconbitmap(r"C:\Users\User\Desktop\Dict\1.ico")
    root.resizable(False,False)
    root.mainloop()  

最佳答案

.ico.jpg 文件放入 pyinstaller 创建的文件夹中。

关于python - pyinstaller 不显示图像和图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20299528/

相关文章:

python - 使用 pyinstaller 后,我的程序在运行 subprocess.run() 命令时卡住

python - Pandas :根据条件删除组

python Fabric不允许我将输出通过管道传输到less?

python - 打乱 pandas 数据框中的行,将重复项保留在一起

python - Pandas :如何生成 "year-month"格式列(句点)?

python - 为什么我的 Tkinter 计算器会因这段代码而崩溃?

超出 Python tkinter Canvas root.after() 最大递归深度

python - Itemconfigure() 和 tkinter 的内存泄漏

pyinstaller - 使用 PyInstaller 编写的程序现在被 AVG 视为特洛伊木马

python-3.x - "dynlib/dll was no found when the application was frozen"当我使用 pyinstaller 制作 .exe 文件时,由于 pylibmtx 发生错误