【问题标题】:PYTHON use nother key like "ENTER" keyPYTHON 使用其他键,如“ENTER”键
【发布时间】:2021-11-13 17:07:57
【问题描述】:
我在 TKinter 中有一个 ComboBox,我可以从中从下拉菜单中选择一个选项。
这适用于鼠标单击或 ENTER 键。
我也想做同样的事情,但要使用 RIGHT 键。
box1 = ttk.Combobox(root, values=different_values)
def boxenter():
#quasi ENTER key functionlity
box1.bind("<Right>",boxenter)
【问题讨论】:
标签:
python
tkinter
combobox
keyboard
bind
【解决方案1】:
您需要在内部创建的 Listbox 小部件上进行绑定,并且可以通过调用 TCL 命令访问此内部 Listbox 小部件:
box1 = ttk.Combobox(root, values=different_values)
def boxenter(event):
# simulate "Enter" key
box1.event_generate('<Return>')
# get the popdown listbox created internally by TCL interpreter
popdown = box1.tk.eval(f'ttk::combobox::PopdownWindow {box1}') + '.f.l'
# call the undocumented _bind()
box1._bind(('bind', popdown), '<Right>', boxenter, None)