首页 > 解决方案 > 如何在不使用任何按钮的情况下更改条目值时更新标签值?

问题描述

我正在创建一个程序,其中有两个条目用于从用户那里接收一些值。有了这些值,我想进行一些计算并将结果显示在标签中。我不想使用任何类型的按钮或小部件来刷新标签的值。我已经尝试为此使用绑定事件,但我没有找到任何在条目值更改时有效的事件。我希望我的问题能被理解。谢谢你。


    self.Capacity_Entry=Entry(self.Window,borderwidth=3,textvariable=self.Capacity)

    self.Capacity_Entry.grid(row=3,column=0)

    self.Capacity_Entry.bind('<Enter>',self.calculate_unknown_variable)

    self.Voltage_Entry=Entry(self.Window,borderwidth=3,textvariable=self.Voltage)

    self.Voltage_Entry.grid(row=3,column=2)

    self.Voltage_Entry.bind('<Enter>',self.calculate_unknown_variable)

    self.Energy_label=Label(self.Window)

    self.Energy_label.grid(row=1,column=4,)


    def calculate_unknown_variable(self,*args):

        self.V=float(self.Voltage.get())

        self.C=float(self.Capacity.get())

        self.E=0.5*self.C*self.V*self.V

        self.Result_Label.config(text=self.E)

标签: pythonuser-interfacebindtkinter-entrytkinter-label

解决方案


您可以使用"<KeyRelease>"事件来执行此操作。

每次您在键盘上释放一个键时,在释放该键时关联的方法将被触发。

self.Capacity_Entry.bind("<KeyRelease>",self.calculate_unknown_variable))


推荐阅读