鼠标事件
所以得Tkinter事件都用字符串描述,格式为<modifier-type-detail>,type(Button,Return)指定事件种类,modifier是指Double这样的前缀,detail则是指具体的鼠标按钮
<ButtonPress-n>
鼠标指针在组件上方时,鼠标按钮n被按下,n为1左键,2中键,3右键,例如<ButtonPress-1> ,缩写形式为<Button-n> ,<n>
<ButtonRelease-n>
<Bn-Motion>
<prefix-Button-n>
<Enter>
<Leave>
self.bind("<Button-1>",self.leftClick)
def leftClick(self,event):
键盘事件
<KeyPress>
按下任意的键
<KeyRelease>
松开任意键
<KeyPress-key>,<KeyRelease-key> 按下或者松开key
<Key>,<Key-key> 分别是<KeyPress>,<KeyPress-key> 的简写形式,一般不要用这个简化形式
<key>
<KeyPress-key>的简化形式,该格式只用于可打印字符(空格和小于符号不包含在内,呵呵???
很奇怪哦)
<Prefix-key>
在按住prefix的同时,按下key。prefix可选项是Alt,Shift,Control,当然也可以同时使用多个prefix,比如<Control-Alt-key>
键盘中间的那些字母,外加(,。/ ' ; [ ] { } \ | ? > < : ")可以用event.char显示。event.char甚至可以显示中文,这一点让我尤为震惊,如果你绑定了一个KeyPress的事件,并且打印event.char,那些当你启动中文输入法的时候,你打的(一次性打的)最后一个字便是event.char,连打的话只能显示最后那个字。
而event.keysym能够显示
Escape,F1....F12,Scroll_Lock,Pause,Insert,Delete,Home,Prior(这个是page up),Next(这个是page down),End,Up,Right,Left,Down,Shitf_L,Shift_R,Control_L,Control_R,Alt_L,Alt_R,Win_L,App(这个键我从来没用过,位于右边的alt与ctrl之间),Caps_Lock,Tab,
有的时候,输入法的不同也会影响这些值,
比如用美式键盘的时候,event.keysym也可以显示(, . / ' ; [ ] | `这些)
但是用搜狗的英文输入的时候就不能显示了
` quoteleft
{ braceleft
[ bracketleft
\ blackslash
| bar
; semicolon
: colon
' quoteright
" quotedbl
, comma
. period
/ slash
< less
> greater
<KeyRelease>
<KeyPress-key>,<KeyRelease-key>
<Key>,<Key-key> 分别是<KeyPress>,<KeyPress-key> 的简写形式,一般不要用这个简化形式
<key>
<Prefix-key>
键盘中间的那些字母,外加(,。/ ' ; [ ] { } \ | ? > < : ")可以用event.char显示。event.char甚至可以显示中文,这一点让我尤为震惊,如果你绑定了一个KeyPress的事件,并且打印event.char,那些当你启动中文输入法的时候,你打的(一次性打的)最后一个字便是event.char,连打的话只能显示最后那个字。
而event.keysym能够显示
Escape,F1....F12,Scroll_Lock,Pause,Insert,Delete,Home,Prior(这个是page up),Next(这个是page down),End,Up,Right,Left,Down,Shitf_L,Shift_R,Control_L,Control_R,Alt_L,Alt_R,Win_L,App(这个键我从来没用过,位于右边的alt与ctrl之间),Caps_Lock,Tab,
有的时候,输入法的不同也会影响这些值,
比如用美式键盘的时候,event.keysym也可以显示(, . / ' ; [ ] | `这些)
但是用搜狗的英文输入的时候就不能显示了
` quoteleft
{ braceleft
[ bracketleft
\ blackslash
| bar
; semicolon
: colon
' quoteright
" quotedbl
, comma
. period
/ slash
< less
> greater