Python 33 windows:更改GUI图标

时间:2014-03-17 17:21:21

标签: python tkinter

我是Python新手,所以我在Windows Vista上安装了Python 33。我正在尝试更改文本编辑器程序的图标。这是我正在使用的脚本:

def main():
    root = Tk()
    root.geometry("250x150+300+300")
    root.wm_iconbitmap('txteditor.ico')  # Saved this in C:/Python33/DLLs
    app = txtEditor(root)                # I've classed this 
    root.mainloop()                      

但我继续犯这个错误:

Traceback (most recent call last):
  File "C:\Users\Me\Documents\Python Code\myTxtEditor.py", line 96, in <module>
    main()
  File "C:\Users\Me\Documents\Python Code\myTxtEditor.py", line 90, in main
    root.wm_iconbitmap('txteditor.ico')
  File "C:\Python33\lib\tkinter\__init__.py", line 1648, in wm_iconbitmap
    return self.tk.call('wm', 'iconbitmap', self._w, bitmap)
_tkinter.TclError: bitmap "txteditor.ico" not defined

我已经搜索了很多答案,但似乎没有什么能适合我的问题。

2 个答案:

答案 0 :(得分:0)

您为图标提供的python路径必定存在错误。 答:检查你是否给出了C:/的完整路径 B:确保您拥有完全正确的文件名和目录

这应该可以阻止错误

答案 1 :(得分:0)

这是因为图标不在当前工作目录中,也不在您定义的路径中。您应该像这样定义完整路径:

def main():
    root = Tk()
    root.geometry("250x150+300+300")
    root.wm_iconbitmap(r'c:/Python33/DLLs/txteditor.ico')
    app = txtEditor(root)
    root.mainloop()

这里的关键是使用原始字符串。现在应该可以了。