所以我认为如果不是编辑你的代码会更清洁,我只是提供了一个新的工作代码示例,展示了你感兴趣的行为.
下面是下面的代码:当你运行它时,你得到一个带有空文本框的小部件(技术上,Tkinter中的Label),供用户提供一些值.当他们输入数值(整数或浮点数)然后单击“计算”按钮时,下方会显示以米为单位的等效值.但是,如果用户键入“红色”,则输入后会出现“蓝色”字样 – 即,即使单击“计算”按钮或其他任何内容,也会显示蓝色.
正如您在下面的倒数第二行中所看到的,获取所需的行为只是描述您在Tkinter事件语法中所需的行为.
from Tkinter import *
import ttk
root = Tk()
def calculate(*args) :
value = float(feet.get())
meters.set((0.305 * value * 10000. + .5)/10000.)
def callback_function(*args) :
meters.set('blue')
mf = ttk.Frame(root, padding="3 3 12 12")
mf.grid(column=0, row=0, sticky=(N, W, E, S))
mf.columnconfigure(0, weight=1)
mf.rowconfigure(0, weight=1)
feet = StringVar()
meters = StringVar()
feet_entry = ttk.Entry(mf, width=7, textvariable=feet)
feet_entry.grid(column&