Tkinter 事件可以用特定形式的字符串来描述,称为事件模式。事件模式的一般形式是:

    其中类型符 type 指定事件类型,最常用的类型有分别表示鼠标事件和键盘事件的 Button 和 Key;修饰符 modifier 用于描述鼠标键或键盘的双击、组合等情况;细节符 detail 指定具体的 鼠标键或键盘按键,如鼠标的左中右三个键分别用 1、2、3 表示,键盘按键用相应字符或按 键名称表示。modifier 和 detail 是可选的,而且事件模式经常可以使用简化形式。例如

    描述符中,修饰符是 Double,类型符是 Button,细节符是 1,综合起来描 述的事件就是双击鼠标左键。

    常用的鼠标事件包括:

    • :按下鼠标左键。可简写为甚至<1>①。类似地有(按下鼠标中键)和(按下鼠标右键)。

    • :按下鼠标左键并移动鼠标。类似有

    • :双击鼠标左键。

    常用的键盘事件包括:

    • :按下 a 键。可简写为 a(不用尖括号!)。可打印字符(字母、数字和标点 符号)都可像字母 a 这样使用,但有两个例外:空格键对应的事件是,小于 号键对应的事件是。注意:1 是键盘事件,而<1>是鼠标事件。

    • :按下回车键。非可打印字符都可像回车键这样用<键名>表示对应事件,例如等等。

    • :按下任意键。

    • :同时按下 Shift 键和↑键。类似的还有 Alt 组合、Ctrl 组合。

    • x 和 y:鼠标点击位置坐标(相对于构件左上角),单位是像素。

    • num:点击的鼠标键号,1、2、3 分别表示左、中、右键。

    • char:如果按下 ASCII 字符键,此属性即是该字符;如果按下特殊键,此属性为空 串。

    • keysym:如果按下普通 ASCII 字符键,此属性即是该字符;如果按下特殊键,此属 性设置为该键的名称(是个字符串)。

    • keycode:所按键的编码。注意,此编码无法区分该键上的不同字符,即它不是键上 字符的编码。

    • keysym_num:这是 keysym 的数值表示。对普通单字符键来说,就是 ASCII 码。 例如,按下任意键都可触发事件,在事件处理函数中可以根据传递来的事件对象的 char 属性来确定具体按下的是哪一个键。