Raspberry Piで、<ButtonPress>や<ButtonRelease>でマウスホイールスクロール時にも反応してしまうのですが、そういう仕様なのでしょうか?
Python
1import tkinter as tk 2 3def func(e, str): 4 print(str) 5 6win = tk.Tk() 7win.geometry("400x300") 8 9entry = tk.Entry(win) 10entry.grid() 11entry.focus_set() 12 13entry.bind("<Button>", lambda e:func(e, "<Button>")) # 各クリックで押したとき(スクロール?) 14#entry.bind("<ButtonPress>", lambda e:func(e, "<ButtonPress>")) # <Button> と同じ 15#entry.bind("<Button-1>", lambda e:func(e, "<Button-1>")) # 左クリックで押したとき 16#entry.bind("<Button-2>", lambda e:func(e, "<Button-2>")) # 中クリックで押したとき 17#entry.bind("<Button-3>", lambda e:func(e, "<Button-3>")) # 右クリックで押したとき 18#entry.bind("<ButtonRelease>", lambda e:func(e, "<ButtonRelease>")) # 各クリックで離したとき(スクロール?) 19#entry.bind("<Double-1>", lambda e:func(e, "<Double-1>")) # 左ダブルクリックで押したとき 20#entry.bind("<Triple-1>", lambda e:func(e, "<Triple-1>")) # 左トリプルクリックで押したとき 21#entry.bind("<Motion>", lambda e:func(e, "<Motion>")) # マウスポインタ動いたとき 22#entry.bind("<Enter>", lambda e:func(e, "<Enter>")) # マウスポインタウィジェットに入る 23#entry.bind("<Leave>", lambda e:func(e, "<Leave>")) # マウスポインタウィジェットから出る 24#entry.bind("<MouseWheel>", lambda e:func(e, "<MouseWheel>")) # マウスホイールをしたとき 25#entry.bind("<Key>", lambda e:func(e, "<Key>")) # キーを押したとき 26#entry.bind("<KeyRelease>", lambda e:func(e, "<KeyRelease>")) # キーを離したとき(押しっぱなしでも反応?) 27#entry.bind("<Escape>", lambda e:func(e, "<Escape>")) # 'Esc'キーを押したとき 28#entry.bind("<Tab>", lambda e:func("<Tab>")) # 'Tab'キーを押したとき 29#entry.bind("<Return>", lambda e:func(e, "<Return>")) # 'Enter'キーを押したとき 30#entry.bind("<BackSpace>", lambda e:func(e, "<BackSpace>")) # 'Backspace'キーを押したとき 31#entry.bind("<Delete>", lambda e:func(e, "<Delete>")) # 'Delete'キーを押したとき 32#entry.bind("<F1>", lambda e:func(e, "<F1>")) # 'F1'キーを押したとき(Fnキーを押しながらではダメ) 33#entry.bind("<Home>", lambda e:func(e, "<Home>")) # 'Home'キーを押したとき 34#entry.bind("<Up>", lambda e:func(e, "<Up>")) # '↑'キーを押したとき 35#entry.bind("<Prior>", lambda e:func(e, "<Prior>")) # 'PageUp'キーを押したとき 36#entry.bind("<Next>", lambda e:func(e, "<Next>")) # 'PageDown'キーを押したとき 37#entry.bind("<Control_L>", lambda e:func(e, "<Control_L>")) # '左Ctrl'キーを押したとき 38#entry.bind("<Alt_L>", lambda e:func(e, "<Alt_L>")) # '左Alt'キーと'a'キーを同時に押したとき 39#entry.bind("<Alt-Key-a>", lambda e:func(e, "<Alt-Key-a>")) # 'Alt'キーと'a'キーを同時に押したとき 40#entry.bind("<Shift-Key-a>", lambda e:func(e, "<Shift-Key-a>")) # 'Shift'キーと'a'キーを同時に押したとき(エントリに入力される文字は'a'。大文字小文字反転) 41#entry.bind("<Shift-Key-A>", lambda e:func(e, "<Shift-Key-A>")) # 'Shift'キーと'A'キーを同時に押したとき(エントリに入力される文字は'A') 42#entry.bind("a", lambda e:func(e, "a")) # 'a'キーを押したとき 43#entry.bind("<KeyPress-b>", lambda e:func(e, "<KeyPress-b>")) # 'b'キーを押したとき 44#entry.bind("<KeyRelease-c>", lambda e:func(e, "<KeyRelease-c>")) # 'c'キーを離したとき 45#entry.bind("xyz", lambda e:func(e, "xyz")) # 'x','y','z'を順番に押したとき 46 47 48win.mainloop()
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/11/19 02:28 編集
2020/11/19 06:45 編集
2020/11/20 01:49 編集
2020/11/20 02:05