Python 正在尝试更改“文本”顶部tkinter Tk()中的默认图标;“窗口”;
我不知道为什么会出现错误,我按照6条指南制作了一个.ico文件,并按字面意思复制了它 两个教程尝试了相对非相对文件路径的所有类型的组合Python 正在尝试更改“文本”顶部tkinter Tk()中的默认图标;“窗口”;,python,tkinter,filepath,.ico,Python,Tkinter,Filepath,.ico,我不知道为什么会出现错误,我按照6条指南制作了一个.ico文件,并按字面意思复制了它 两个教程尝试了相对非相对文件路径的所有类型的组合 from tkinter import * from PIL import ImageTk, Image root = Tk() root.title('Local Host Store') root.geometry("500x500") root.iconbitmap('pleasegod1.ico') #mainloop ro
from tkinter import *
from PIL import ImageTk, Image
root = Tk()
root.title('Local Host Store')
root.geometry("500x500")
root.iconbitmap('pleasegod1.ico')
#mainloop
root.mainloop()
<ERROR CODE BELOW>
[Running] python -u "c:\Users\Eric\Desktop\LocalHostStore\main.py"
Traceback (most recent call last):
File "c:\Users\Eric\Desktop\LocalHostStore\main.py", line 10, in <module>
root.iconbitmap('pleasegod1.ico')
File "C:\Users\Eric\AppData\Local\Programs\Python\Python38\lib\tkinter\__init__.py", line 2071, in
wm_iconbitmap
return self.tk.call('wm', 'iconbitmap', self._w, bitmap)
_tkinter.TclError: bitmap "pleasegod1.ico" not defined
从tkinter导入*
从PIL导入ImageTk,图像
root=Tk()
root.title('本地主机存储')
根几何(“500x500”)
root.iconbitmap('plesegod1.ico')
#主回路
root.mainloop()
[正在运行]python-u“c:\Users\Eric\Desktop\LocalHostStore\main.py”
回溯(最近一次呼叫最后一次):
文件“c:\Users\Eric\Desktop\LocalHostStore\main.py”,第10行,在
root.iconbitmap('plesegod1.ico')
文件“C:\Users\Eric\AppData\Local\Programs\Python38\lib\tkinter\\uuuu init\uuuu.py”,第2071行,在
wm_iconbitmap
返回self.tk.call('wm','iconbitmap',self.\w,位图)
_tkinter.TclError:未定义位图“plesegod1.ico”
尝试键入整个图像路径或将图像放置在同一代码文件中,并确保图像类型为.ico替代解决方案是使用Tk.iconphoto()方法,而不是Tk.iconbitmap()。相反,root.iconphoto(True,PhotoImage(file=“C:/Users/Eric/Desktop/GuiFlowerIcon.png”))工作得很好,我想它只是没有使用.icon文件。对我的用例进行Tk.iconbitmap()故障排除效率不高。这只是将tkinter窗口顶部的图标从默认tkinter库“商标”图标更改为您自己的自定义图标。iconphoto可以是png。旁注:我花了很长时间按照教程创建.ico文件,我的文件是15x15 px网格,在ms paint中保存为位图24,我想,然后将文件类型转换为.ico,windows也认识到了这一点,如果您尝试将大png文件更改为.ico,它甚至不允许您更改文件扩展名。。。非常奇怪。问题仍然可能是,如果有人有任何制作python tkinter可以识别的.ICO文件的技巧,或者它是如何在中实现的,那么它可能无法识别为.ICO文件。。c语言?在幕后,这将是非常酷的,因为我希望有一天能解包tkinter,以及它是如何工作的。你的项目结构到底是什么?在root.iconbitmap(…)之前执行打印(os.getcwd())
(需要导入os
)
并查看预期路径是否在控制台中打印。尝试提供整个路径在同一目录中创建一个新文件,然后导入os,os.startfile('plesegod1.ico')
,查看python是否可以打开该文件。也可以尝试给它一个完整的路径。您还可以通过说print(os.path.exists('plesegod1.ico'))来检查文件是否存在。
同一个文件在html xD java程序中打开,可作为tkinter小部件中的照片使用,这一点非常不值得我花时间:/