我有一个使用for循环创建条目小部件的程序:
from tkinter import *
root = Tk()
entList = []
def deleteChar(event):
ent.delete(0, 'end')
ent.insert(0, '')
ent.config(fg='black')
for x in range(12):
ent = Entry(root, fg='grey60')
ent.insert(0, 'Enter Name')
ent.pack()
ent.bind('<FocusIn>', deleteChar)
entList.append(ent)
root.mainloop()
有没有办法让函数识别哪个条目被点击了,所以它会删除那个条目中的文本而不是只删除最后一个条目?
答案 0 :(得分:1)
应用程序中的一个小部件将具有键盘焦点。您可以查询哪个窗口小部件具有焦点。此外,传入的event
对象引用了触发回调的窗口小部件,这通常是您在事件回调中执行的操作。
def deleteChar(event):
event.widget.delete(0, 'end')
event.widget.insert(0, '')
event.widget.config(fg='black')