我正在开发一个程序来控制一台机器,它将只有一个键盘连接。我使用的是Python 2.7和Tkinter 8.5。我正在使用OptionMenu%s来允许用户在机器上进行设置。
当我在Windows下运行时,我能够使用键盘上的箭头键遍历下拉列表,然后使用键盘enter选择选项。这在Linux (Debian Wheezy)上是行不通的。
如何将KP_Enter绑定为返回键?
import Tkinter
def c(self, event):
event.b[".keysym"] = "<<space>>"
print "button invoked"
t = Tkinter.Tk()
b = Tkinter.OptionMenu(t, ".500", ".510", ".520",
".550", ".560", ".570", ".580", command=c)
t.bind("<KP_Enter>", c)
e = Tkinter.Entry()
e.pack()
b.pack(anchor=Tkinter.E)
t.mainloop()发布于 2017-03-22 11:32:13
使用这个脚本(来自here),当您按下任何键时,应该很容易识别由Tkinter触发的键事件,无论是<Return>、<KP_Enter>,还是(不知何故,您的小键盘有一个有趣的映射)。
只需查看当您按下所需按钮时的控制台输出,并在实际代码中使用该键事件名称。
import Tkinter
def callback(e):
print e.keysym
w = Tkinter.Frame(width=512, height=512)
w.bind("<KeyPress>", callback)
w.focus_set()
w.pack()
w.mainloop()https://stackoverflow.com/questions/22724356
复制相似问题