【发布时间】:2015-06-10 21:52:07
【问题描述】:
需要创建一个通用函数,在事件发生时它将聚焦的小部件返回到其默认值。有没有办法做到这一点?
例子:
entry1 = Tkinter.Entry()
entry1.grid(..)
entry1.insert(0,"hello")
entry1.bind("<FocusIn>", EntryFocusedIn)
entry1.bind("<FocusOut>", EntryFocusedOut)
entry2 = Tkinter.Entry()
entry2.grid(..)
entry2.insert(0,"again")
entry2.bind("<FocusIn>", EntryFocusedIn)
entry2.bind("<FocusOut>", EntryFocusedOut)
def EntryFocusedIn(params):
params.widget.delete(0, Tkinter.END)
def EntryFocusedOut(params):
# return widget to its default value
# which in case of entry1 its "hello"
# and in case of entry2 its "again"
【问题讨论】:
-
它应该如何知道您认为 "默认值" 是什么?我建议您使用例如自定义
Entry子类用于此目的的default_value属性。 -
这是个好主意,我希望已经有一个内置函数用于条目的默认(初始)值,即在构建时设置的值。
-
不,就
Entry而言,该值没有什么特别之处。 -
明白,谢谢。