我正在尝试将事件click1绑定到self.entrada4_2(这是一个标签),无论我如何尝试都无法正常工作。
class Pagina_dos(tk.Frame):
def __init__(self, parent, controller):
tk.Frame.__init__(self, parent)
self.controller = controller
texto4_1=tk.Label(self, text="Registro") .grid(row=0, column=0)
texto4_2=tk.Label(self, text="Peso") .grid(row=1, column=0)
entrada4_1=tk.Label(self, width=20, text=1)
entrada4_1.grid(row=0, column=1)
self.entrada4_2=ttk.Label(self,text="", width=20)
self.update_pesa()
def click1 (event=None):
global numero_registro
agarre=self.entrada4_2.cget("text")
lista_regsitro.append(agarre)
numero_registro=numero_registro+1
entrada4_1=tk.Label(self, width=20, text=numero_registro)
entrada4_1.grid(row=0, column=1)
self.entrada4_2.grid(row=1, column=1)
boton_registrar=tk.Button(self)
self.entrada4_2.bind('<Return>', click1)
boton_registrar.config(text="REGISTRAR",width=11, command=click1)
boton_registrar.grid(row=2, column=0)
boton_acabar=tk.Button(self, text="PARAR",width=7, command=controller.destruir).grid(row=2, column=1)
def update_pesa(self):
read=None
ser=serial.Serial("COM4",baudrate=9600)
while read==None:
Pesa=ser.read()
if Pesa==b"=":
read=ser.read(7)
self.entrada4_2.configure(text=read)
self.after(100, self.update_pesa)
当我执行代码时,按键不起作用,但是按钮起作用。是否可以将事件绑定到标签,或将按键绑定到按钮?
答案 0 :(得分:0)
由于目标是按返回键执行默认操作,所以最简单的解决方案是绑定到顶层本身。然后,您需要在打开窗口时将焦点放在窗口上。默认情况下,可能会发生这种情况,具体取决于操作系统,但是最好明确一点。
注意:当您绑定到Toplevel
时,该Toplevel
中的所有小部件也将获得绑定,因此,无论哪个内部小部件具有焦点,绑定都将起作用。