我使用的是 Python 2.7.4 和 Tkinter 的新版本,但我坚持使用以下代码。 我生成了一个事件“test”并使用字符串设置了“data”选项,但是从事件中检索它时发生错误。
错误 -> AttributeError:事件实例没有属性“数据”
from Tkinter import *
def handle_it(event):
# print "event handler"
print event.data
root = Tk()
root.after(1, lambda: root.event_generate('<<test>>', data="hi there"))
root.bind('<<test>>', handle_it)
root.mainloop()
我找不到这个案例的相关Python文档,所以我引用了下面的tcl文档 http://www.tcl.tk/man/tcl8.5/TkCmd/event.htm#M14
Python 2.7 的 TKinter 是否支持“数据”选项?谢谢!
最佳答案
不,不幸的是它没有。 Tcl 解释器将其识别为有效选项,但它是 Event 类中未包含的缺失选项之一,如 warp
。你可以看一下 Tkinter source code 的第 1188 行查看其余缺少的选项。
关于python - [Python/Tkinter]如何获取在函数 "event_generate"中设置的数据值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16369947/