为什么find_withtag不能在python中工作

时间:2016-01-07 06:01:01

标签: python image canvas tkinter tags

这是我的代码的一部分,即使我使用withtag函数,图像的ID也不会打印。我认为canvas.delete函数不起作用也是同样的问题,似乎标签被插入为" 123"," 456"。但是,我希望使用和获取的标签是123而不是' 123'。我想这是我无法通过findtag功能获得我想要的ID的主要问题。

           CurrentImage=Note[NoteIndexLocal]
           Temp=canvas.create_image(XShow,YShow,image=CurrentImage,tag=123)
           print canvas.find_withtag(123)  #This Wont Work,printed()
           canvas.delete(123)              #This Wont Work
           print canvas.gettags(Temp)      #printed '123'

1 个答案:

答案 0 :(得分:0)

来自:http://effbot.org/tkinterbook/canvas.htm

  

标签是附加到项目的符号名称。标签是普通的字符串,   并且它们可以包含除空格之外的任何内容(只要它们不包含空格   看起来像项目句柄。)

使用str(123)代替123

编辑:正确答案来自doc "as long as they don’t look like item handles"的文字。数字123看起来像项目句柄(打印Temp以查看其外观),因此它无法正常工作。使用像"a123"这样的文字,它会起作用。