如何为Python tkinter GUI程序在Windows任务栏设置png/ico格式图标
Windows tkinter 程序自定义任务栏图标实现方案
前置准备
- 首先将你要用的图片转换为Windows原生支持的
.ico格式,建议打包1616、3232、4848、256256多尺寸,避免不同场景下缩放模糊 - 将生成的ico文件存放到你的项目目录下
开发阶段代码配置
tkinter根窗口内置了iconbitmap方法可以直接指定图标路径,参考示例代码:
import tkinter as tk # 初始化根窗口 root = tk.Tk() root.title("自定义图标测试程序") # 填入你的ico文件相对路径或绝对路径即可 root.iconbitmap("custom_icon.ico") # 你的其他业务代码 root.mainloop()
路径找不到的话可以写绝对路径,比如Windows下写法:
root.iconbitmap(r"C:\project\demo\custom_icon.ico")
打包成exe后保持图标生效
如果使用pyinstaller打包程序,需要在打包命令中指定图标参数,才能让生成的exe文件本身、运行时任务栏都显示自定义图标,打包命令参考:pyinstaller -F -w -i custom_icon.ico your_script.py
-F:打包为单个独立exe文件-w:GUI程序专用,运行时不弹出黑色控制台窗口-i:指定打包使用的图标文件路径
常见问题排查
- 直接运行py脚本时任务栏还是显示Python默认图标:这是Windows对脚本文件的默认处理逻辑,打包成exe后就会正常显示自定义图标
- 打包后还是显示默认图标:确认你的ico文件是正规转换生成的,不是直接修改后缀名的png/jpg;也可以尝试清空Windows图标缓存,避免系统缓存了旧图标
内容的提问来源于stack exchange,提问作者Giorgio
相关产品推荐
相关产品推荐

