6

Control+1シーケンスをウィンドウにバインドしたい。widget.bind("<Control-1>", lambda event: someFunction(event))バインドしControl + Left Mouse Clickます。これは、これを使用する私のコードのスニペットです:

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))bind 1widget.bind("<1>", lambda event: someFunction(event))bind Left Mouse Click、およびwidget.bind("<Control-h>", lambda event: someFunction(event))bindがあることは知ってControl+hいますが、どのように組み込むことができControl+1ますか? 前もって感謝します。

4

1 に答える 1

8

イベント名は<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()

イベント名の部分的な表をここに投稿しました。

于 2013-06-21T18:00:32.583 に答える