cget('image')方法返回pyimage1而不是图像名称

时间:2013-03-01 22:13:49

标签: python widget tkinter

我是编程的新手,我正在尝试使用python 3.3中的tkinter创建一个应用程序。在这个应用程序中,我使用的是包含图像的按钮,我想执行的操作取决于按钮所包含的图像类型。这是我的程序的简化版本:

from tkinter import *
master=Tk()
c_black = PhotoImage(file="c_black.gif")
b=Button(master, image=c_black)
print(b.cget('image'))
master.mainloop()

而不是

c_black

控制台返回

pyimage1

我不知道为什么。我一直试图弄清楚好几个小时了。也许有办法以不同的方式做到这一点?

1 个答案:

答案 0 :(得分:0)

使用cget(),您只能将该属性检索为字符串,因此您需要存储对PhotoImage对象的引用:

b = Button(...)
b.image = c_black
print(b.image.cget('file'))