控件+数字Tkinter绑定

2024-10-01 11:40:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我想将一个控件+1序列绑定到一个窗口。widget.bind("<Control-1>", lambda event: someFunction(event))绑定控件+鼠标左键单击。这是我的代码片段,将使用此代码:

self.master.bind("<Control-1>", lambda event: self.allTypeButtons[1].invoke())
self.master.bind("<Control-2>", lambda event: self.allTypeButtons[2].invoke())
self.master.bind("<Control-3>", lambda event: self.allTypeButtons[3].invoke())
# self.allTypeButtons is a dictionary with Radiobuttons as its values

我也尝试了self.master.bind("<Control>-1", lambda event: self.allTypeButtons[1].invoke()),但这给了我:_tkinter.TclError: bad event type or keysym "Control"。在

另外,self.master.bind("Control-1", lambda event: self.allTypeButtons[1].invoke())然后按Control+1不会调用事件。在

我知道widget.bind("1", lambda event: someFunction(event))绑定1widget.bind("<1>", lambda event: someFunction(event))绑定鼠标左键单击,并且widget.bind("<Control-h>", lambda event: someFunction(event))绑定控件+h,但我如何合并控件+1?提前谢谢。在


Tags: lambda代码selfmastereventbind序列鼠标
1条回答
网友
1楼 · 发布于 2024-10-01 11:40:47

事件名为<Control-Key-1>。在

import Tkinter as tk
def quit(event):
    print("You pressed Control-Key-1")
    root.quit()

root = tk.Tk()
root.bind('<Control-Key-1>', quit)
root.mainloop()

我在这里贴了一张partial table of event names。在

相关问题 更多 >