原创 Tcl中bind用法

2009-9-1 15:31 5658 7 7 分类: FPGA/CPLD

Tcl/TK中可以用bind进行命令绑定,最近小试了一下,复杂的不会,弄几个简单的例子:


bind .t <Double-2> {.t delete 1.0 end};##绑定鼠标中键为清除text
bind .t <Control-a> {.t delete 1.0 end};##绑定Ctrl+A键为清除text
;###双击鼠标左键在entry里插入相应的内容
bind .numeratorValue <Double-1> { .numeratorValue delete 0 end; .numeratorValue insert insert 1048576 }
bind .denominatorValue <Double-1> { .denominatorValue delete 0 end; .denominatorValue insert insert 4096 }


####################################################################


上面举了几个例子,下面简单说说可以绑定的操作:


1、有关鼠标的绑定


      1)、左键:


                <Double-1>        :表示双击左键;


                <Triple-1>          :表示三击左键;


      2)、左键:


                <Double-2>        :表示双击中键;


                <Triple-2>          :表示三击中键;


      3)、左键:


                <Double-3>        :表示双击右键;


                <Triple-3>          :表示三击右键;


注:没有试出来如何绑定单击鼠标键。


2、键盘绑定,可以单键,也可以组合键,下面举例:


1)、<Enter>   :不是回车,而是鼠标光标的移动,第一个字母必须大写;


2)、 <Control-a> :Ctrl键+a,注意Control的第一个字母“c”必须大写;


3)、<Key-a>或者<Keypress-a> 或者<a>  :字母a键(区分大小写),当然a可以更改为任何其他键;
4)、<Motion> :和<Enter>一样,是鼠标光标移入目标区域;


5)、<Any-a>:这里用法的意思是任何带有a的操作都被绑定,例如按a和按Ctrl+a效果一样;


6)、<Alt-a>:Alt+a,第一个字母大写,这里要注意的是Ctrl键在tcl中只认“Control”,而Alt跟键盘对应;


7)、实验了一下Shift键也可以绑定,但是必须和上位符号或者大写字母绑定,比如<Shift-A>,而没有<Shift-a>;


8)、经过试验,Alt键还可以在tcl中用Mod1、Mod2、M2代替;


9)、<Lock-A>::Lock代替Caps Lock键,同Shift键,只和大写字母组合;


10)、<Leave>:和Motion相反,是鼠标光标移出目标区域;


11)、<Return>:这个才是键盘的回车键;


12)、<Escape>:Esc键;


13)、同理也可以绑定<F1>~<F12>,而且是单键绑定。


 



 

文章评论0条评论)

登录后参与讨论
我要评论
0
7
关闭 站长推荐上一条 /2 下一条