after 命令
Tk 命令 after 被用于按给定数目的微秒延迟一个命令。如果给 after 的参数除了时间延迟还有其他的参数,则 after 把这些额外的参数串联成一个在延迟给定的时间后要在后台被求值的脚本,而 after 立即返回。
after 的返回值是这个延迟事件的一个唯一的命令标识符。这个标识符可被用于访问延迟命令,例如取消它。
proc movie {ta tim} {
global id
.mv.c move $ta 1 1
set id [after $tim movie $ta $tim]
}
过程"movie" 移动由它的标签名标识的一个对象(物体)(这里是文本串),在x 和 y 方向上移动一象素。接着它把自己重安排为在给定时间间隔后被调用。把每次 after 安排调用"movie"之后的返回值赋予全局变量 "id"。过程将被递归的调用来使加了标签的文本按对角线向下移动。