【问题标题】:Wrong Tkinter icon in Windows TaskbarWindows 任务栏中的错误 Tkinter 图标
【发布时间】:2020-01-15 17:34:40
【问题描述】:

我已经设置了我想与root.iconbitmap( default='Test.ico') 一起使用的图标,并且该图标在 Tkinter GUI 中正确显示,但它在 Windows 任务栏中显示了“Tkinter 羽毛”徽标。当我使用 cx_freeze 编译 python 脚本时,.exe 文件具有正确的图标,但同样,任务栏中的图标显示了羽毛。有没有什么办法解决这一问题?提前致谢。

附:我正在使用 Python 3.6.3

编辑:

tkinter 窗口显示正确的图标,问题是任务栏显示“羽毛”图标。任务管理器出于某种原因显示正确的图标。奇怪的是,有时任务栏会在一段时间后显示正确的图标。我无法重现它,因为它似乎是随机发生的。

【问题讨论】:

标签: python tkinter


【解决方案1】:

我使用 Inno Setup (http://www.jrsoftware.org/isinfo.php) 将 .exe 与相关文件捆绑在一起。这修复了图标不显示的问题,并将我的应用程序的下载大小从 300MB 减少到 70MB。

【讨论】:

    【解决方案2】:

    尝试添加图标文件的完整路径。这是因为只有您的 python 脚本,即在同一目录中才能找到该图标文件,因此将其显示在窗口顶部而不是任务管理器中。

    类似这样的:

    from tkinter import *
    login=Tk()
    
    
    login.iconbitmap(r'C:\Users\Desktop\PYTHON\GUI\cricket.ico')
    

    This works for me

    【讨论】:

    • tkinter 窗口显示正确的图标,问题是任务栏显示“羽毛”图标。任务管理器出于某种原因显示正确的图标。奇怪的是,有时任务栏会在一段时间后显示正确的图标。我无法重现它,因为它似乎是随机发生的。
    • 这对我来说很好用:stackoverflow.com/a/34547834/8865579 import ctypes myappid = 'mycompany.myproduct.subproduct.version' # 任意字符串 ctypes.windll.shell32.SetCurrentProcessExplicitAppUserModelID(myappid)
    • 我试过这个,但不幸的是它没有用。我发现使用 Inno Setup 解决了这个问题。感谢您的帮助!
    • 是的,我也用过,但我不觉得':) 提醒一下
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-27
    • 2023-02-14
    • 2017-02-15
    • 2013-07-10
    • 2011-04-28
    相关资源
    最近更新 更多