在tkinter,python中,我试图创建一个程序,它涉及到在画布上创建一个图形并点击按钮,并且不会创建更多的图形。这里是我的代码:使用Tkinter在第一次点击后只能运行一次的函数?
from tkinter import *
root = Tk()
canvas = Canvas(root) # Creating Canvas
canvas.pack()
def create(event):
x1, y1 = (event.x - 5), (event.y - 5)
x2, y2 = (event.x + 5), (event.y + 5) # Creates Rectangle Where Button Clicked
canvas.create_rectangle(x1,y1,x2,y2,fill='red')
root.bind_all("<Button-1>", create) # Binds Mouse Click Button
citybg = PhotoImage(file= r"example.png")
citybgimage = canvas.create_image(50, 50, image=citybg) # Background for Canvas
我的问题是,如何让矩形只能够创造一次和只有一次,并且不再执行的create
功能。希望这个解释得很好,我希望能很好地回答。
'root.bind_all()'将返回先前分配给该事件的函数。保存这个值,然后'bind(“”,previous_value)'当你想恢复它时(可能在'create()'函数中)。 –
martineau