检查是否有任何用Tkinter调度的方法

2024-04-18 23:28:36 发布

您现在位置:Python中文网/ 问答频道 /正文

如何检查是否有任何方法与Tkinger AFTER method一起计划?我有一个方法,在画布上随机创建给定数量的正方形(用AFTER方法调度),另一个是删除被点击的方块(这个方法基本上是每个方块的一个事件处理程序),最后一个删除在一定时间后没有被点击的方块(比如2秒),它是用after方法调度的。我喜欢做的是显示一个消息框,并且只有当所有给定数量的正方形被绘制并从画布上移除时才显示消息。因为有很多次所有的方块都会被移除,但仍有一些方块需要绘制,所以使用find_all方法根本不起作用。如果我使用variable inside draw方法并将其减小为0,那么在显示方块之前,它会减小到零,结果导致消息框在错误的时间出现。所以我在寻找一种方法来找出在AFTER method list中是否还有要执行的方法。在


Tags: 方法消息处理程序数量画布时间绘制事件
1条回答
网友
1楼 · 发布于 2024-04-18 23:28:36

我不知道是否可以使用Tkinter方法,但是,您可以直接使用Tk找到这样的信息widget.tk.call('after', 'info')返回{}待定订阅的列表。在

这是一个完整的例子

import Tkinter

def foo():
    print "foo"

root = Tkinter.Tk()
root.after(1000, foo)
#>u'after#0'
root.after(1000, foo)
#>u'after#1'
root.tk.call('after', 'info')
#>'after#1 after#0'

相关问题 更多 >