Tkinter 输入框默认文本
Tkinter Entry box default text
如何在 python Tkinter 中为输入框默认文本编写代码?
我想添加一个默认文本,当我点击输入框时它会立即消失。
要做到这一点,您只需将默认文本插入 Entry
,然后将 Entry
绑定到获取焦点并删除条目中的所有内容并取消绑定小部件,这样它就不会' 下次用户单击时删除其中的所有内容。
import tkinter as tk
def clear_default(event):
event.widget.delete(0, 'end')
event.widget.unbind('<FocusIn>')
root = tk.Tk()
entry = tk.Entry()
entry.pack(padx=10, pady=10)
entry.insert(0, 'Default Text')
entry.bind('<FocusIn>', clear_default)
root.mainloop()
如果它是默认值而不仅仅是占位符,那么您可以在小部件获得焦点时不删除,select小部件中的所有内容,以便当用户开始输入时select离子被删除。如果用户想要编辑他们的条目,这也会有所帮助:
entry.bind('<FocusIn>', lambda e: e.widget.select_range(0, 'end'))
如何在 python Tkinter 中为输入框默认文本编写代码? 我想添加一个默认文本,当我点击输入框时它会立即消失。
要做到这一点,您只需将默认文本插入 Entry
,然后将 Entry
绑定到获取焦点并删除条目中的所有内容并取消绑定小部件,这样它就不会' 下次用户单击时删除其中的所有内容。
import tkinter as tk
def clear_default(event):
event.widget.delete(0, 'end')
event.widget.unbind('<FocusIn>')
root = tk.Tk()
entry = tk.Entry()
entry.pack(padx=10, pady=10)
entry.insert(0, 'Default Text')
entry.bind('<FocusIn>', clear_default)
root.mainloop()
如果它是默认值而不仅仅是占位符,那么您可以在小部件获得焦点时不删除,select小部件中的所有内容,以便当用户开始输入时select离子被删除。如果用户想要编辑他们的条目,这也会有所帮助:
entry.bind('<FocusIn>', lambda e: e.widget.select_range(0, 'end'))