Python Tkinter 提供了一系列变量类型,例如 StringVar() 和 BooleanVar(),它们配备了追踪法。当使用模式和回调函数调用此方法时,您可以监视变量的更改。
但是,传递给trace方法的回调函数是用四个参数调用的:self、n、m、 x。虽然 x 似乎指示触发回调的模式,但前两个参数 n 和 m 通常仍然很神秘。
揭开第一个参数
第一个参数回调函数是内部变量名。该名称通常是变量的用户分配名称(如果提供)(例如,StringVar(name='foo'))。否则,Tkinter 会为您生成一个类似“PYVAR0”的名称。此名称可与 tkinter 方法 getvar 和 setvar 结合使用。
探索第二个参数
对于标量变量,第二个参数始终是空字符串。但是,如果变量是列表变量,则 m 表示该列表的索引。这在 Tkinter 中相当罕见。
第三个参数的意义
第三个参数 x 表示触发回调的操作,可以取值 "读取”、“写入”或“取消设置”。如果您对各种操作(读取、写入或删除)使用相同的方法,此信息会很有帮助。
需要注意的是,Tkinter 是 Tcl/Tk 解释器的 Python 包装器。有关变量跟踪的综合文档可在此处找到:
http://tcl.tk/man/tcl8.5/TclCmd/trace.htm#M14
参考此文档可以提供更多见解深入了解跟踪回调的内部工作原理。
以上是Tkinter 变量跟踪回调中的前两个参数代表什么?的详细内容。更多信息请关注PHP中文网其他相关文章!