return 键在 tkinter 中是否有一些新关键字?
Is there some new keyword for return key in tkinter?
我正在制作一个计算器,我将 = 按钮绑定到 return 按键,但它不起作用。我已经将我的按钮绑定到一个相同的函数,并且还绑定了一个点击函数
def equal():
if screenVal.get().isdigit():
value = int(screenVal.get())
else:
try:
value = eval(screenVal.get())
except Exception:
value = "Err"
screenVal.set(value)
screenEnt.update()
def click(event):
global screenVal
text = event.widget.cget("text")
if text == "=":
if screenVal.get().isdigit():
value = int(screenVal.get())
else:
try:
value = eval(screenVal.get())
except Exception:
value = "Err"
screenVal.set(value)
screenEnt.update()
elif text == "C":
screenVal.set("")
screenEnt.update()
else:
screenVal.set(screenVal.get() + text)
screenEnt.update()
b = Button(frame, text="=", padx=10, pady=10, font="consolas 15 bold", width=3, command=equal)
b.pack(side=LEFT)
b.bind('<Return>', click)
有人可以帮忙吗?
我正在 AMD 64
上开发 python 3.7.9
import tkinter as tk
root=tk.Tk()
def equal():
print('equal')
def click(event):
print('click')
b = tk.Button(root, text="=", padx=10, pady=10, font="consolas 15 bold", width=3, command=equal)
b.pack(side='left')
b.bind('<Return>', click)
root.mainloop()
如果您 运行 此脚本 equal
命令将按预期工作。您的问题似乎是,您无法执行 return
绑定。该事件仅在 keyboard-focus 在该按钮上时发生,尝试按 Tab 直到按钮获得焦点。
一个解决方案可能是将其绑定到框架或更好地绑定到 window。就像下面的例子一样。
import tkinter as tk
root=tk.Tk()
def equal():
print('equal')
def click(event):
print('click')
b = tk.Button(root, text="=", padx=10, pady=10, font="consolas 15 bold", width=3, command=equal)
b.pack(side='left')
root.bind('<Return>', click)
root.mainloop()
我正在制作一个计算器,我将 = 按钮绑定到 return 按键,但它不起作用。我已经将我的按钮绑定到一个相同的函数,并且还绑定了一个点击函数
def equal():
if screenVal.get().isdigit():
value = int(screenVal.get())
else:
try:
value = eval(screenVal.get())
except Exception:
value = "Err"
screenVal.set(value)
screenEnt.update()
def click(event):
global screenVal
text = event.widget.cget("text")
if text == "=":
if screenVal.get().isdigit():
value = int(screenVal.get())
else:
try:
value = eval(screenVal.get())
except Exception:
value = "Err"
screenVal.set(value)
screenEnt.update()
elif text == "C":
screenVal.set("")
screenEnt.update()
else:
screenVal.set(screenVal.get() + text)
screenEnt.update()
b = Button(frame, text="=", padx=10, pady=10, font="consolas 15 bold", width=3, command=equal)
b.pack(side=LEFT)
b.bind('<Return>', click)
有人可以帮忙吗? 我正在 AMD 64
上开发 python 3.7.9import tkinter as tk
root=tk.Tk()
def equal():
print('equal')
def click(event):
print('click')
b = tk.Button(root, text="=", padx=10, pady=10, font="consolas 15 bold", width=3, command=equal)
b.pack(side='left')
b.bind('<Return>', click)
root.mainloop()
如果您 运行 此脚本 equal
命令将按预期工作。您的问题似乎是,您无法执行 return
绑定。该事件仅在 keyboard-focus 在该按钮上时发生,尝试按 Tab 直到按钮获得焦点。
一个解决方案可能是将其绑定到框架或更好地绑定到 window。就像下面的例子一样。
import tkinter as tk
root=tk.Tk()
def equal():
print('equal')
def click(event):
print('click')
b = tk.Button(root, text="=", padx=10, pady=10, font="consolas 15 bold", width=3, command=equal)
b.pack(side='left')
root.bind('<Return>', click)
root.mainloop()