擅长:python、mysql、java
<p>没有理由在这里使用显式循环,<code>root.mainloop</code>已经提供了显式循环,它在每次单击事件时为您调用处理程序。写作:</p>
<pre><code>from Tkinter import *
root = Tk()
row = []
col = []
def click(event):
row.append(event.x)
col.append(event.y)
frame = Frame(root, width=100, height=100)
frame.bind("<Button-1>", click)
frame.pack()
root.mainloop()
</code></pre>
<p>一旦<code>root.mainloop</code>完成,<code>row</code>和<code>col</code>将使用每次单击的所有x和y坐标填充。也没有理由将<code>x</code>和<code>y</code>设为全局的:它们的全局值总是保存上次调用<code>click</code>时的值(或者如果您根本没有单击过,则会给您一个未定义的变量错误)。你知道吗</p>