你可以使用Tkinter中的绑定方法来实现实时更新IntVar的值。以下是一个示例代码:
import tkinter as tk
def update_total():
# 获取两个框里的值并相加
total = var1.get() + var2.get()
# 更新总和的Entry框
var_total.set(total)
root = tk.Tk()
# 创建两个输入框和一个总和的输出框
var1 = tk.IntVar()
entry1 = tk.Entry(root, textvariable=var1)
entry1.pack()
var2 = tk.IntVar()
entry2 = tk.Entry(root, textvariable=var2)
entry2.pack()
var_total = tk.IntVar()
entry_total = tk.Entry(root, textvariable=var_total)
entry_total.pack()
# 绑定更新方法,使得每次输入框的值发生变化时都调用update_total方法
var1.trace("w", lambda name, index, mode: update_total())
var2.trace("w", lambda name, index, mode: update_total())
root.mainloop()
在上面的代码中,我们创建了两个输入框(entry1和entry2)和一个用于显示总和的输出框(entry_total)。我们使用IntVar来保存输入框的值,并使用textvariable参数将它们与对应的输入框关联起来。
然后,我们定义了一个update_total函数,该函数在每次输入框的值发生变化时被调用。它获取两个输入框的值,并计算它们的总和。然后,它使用set方法将计算结果更新到var_total变量中,从而更新总和的输入框。
最后,我们使用trace方法来绑定更新方法。当var1或var2的值发生变化时("w"表示写入模式),将自动调用update_total方法。这样,每当你更改输入框的值时,总和的输入框将实时更新。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |