tkinter 中的键绑定 Python
Keybinding in tkinter Python
如果我在键盘上输入“*”,它应该在输入字段中输入为 'x'。下面是示例代码。我是 tkinter 的新手。
from tkinter import *
def func(number):
x = str(e1.get())
e1.delete(0, END)
e1.insert(0, str(x) + str('x'))
main = Tk()
main.geometry('200x50')
e1=Entry()
e1.bind('*',func)
e1.pack()
main.mainloop()
我得到 'x*'。但我只需要在输入字段中输入 'x'。任何建议都会很有帮助。
需要忽略func()
末尾返回'break'
输入的*
字符。如果输入光标不在输入字符串的末尾,您的逻辑也将不起作用。
下面是修改后的 func()
:
def func(event):
# add the "x" at the insertion position
event.widget.insert('insert', 'x')
# ignore the entered "*" character
return 'break'
如果我在键盘上输入“*”,它应该在输入字段中输入为 'x'。下面是示例代码。我是 tkinter 的新手。
from tkinter import *
def func(number):
x = str(e1.get())
e1.delete(0, END)
e1.insert(0, str(x) + str('x'))
main = Tk()
main.geometry('200x50')
e1=Entry()
e1.bind('*',func)
e1.pack()
main.mainloop()
我得到 'x*'。但我只需要在输入字段中输入 'x'。任何建议都会很有帮助。
需要忽略func()
末尾返回'break'
输入的*
字符。如果输入光标不在输入字符串的末尾,您的逻辑也将不起作用。
下面是修改后的 func()
:
def func(event):
# add the "x" at the insertion position
event.widget.insert('insert', 'x')
# ignore the entered "*" character
return 'break'