Python 所有 Tkinter 事件列表

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/32289175/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-19 11:21:05  来源:igfitidea点击:

List of All Tkinter Events

pythoneventstkintertcl

提问by mcu

In Python tkintermodule, <Button-1>, <Button-2>and <Button-3>are used to identify mouse button clicks for left, middle and right buttons respectively.

在 Pythontkinter模块中<Button-1><Button-2><Button-3>分别用于识别鼠标左键、中键和右键的点击。

Likewise, <KeyPress-Return>is used for the return key press.

同样,<KeyPress-Return>用于返回键按下。

Where can I find a list of all such events, including the names for the various keyboard keys?

在哪里可以找到所有此类事件的列表,包括各种键盘按键的名称?

Tcl bind manualdoes not have those.

Tcl 绑定手册没有那些。

采纳答案by albert

A general list for Bindings and Events can be found on effbot.orgor in the docs provided by New Mexico Techwhereas the name of several keys are listed herein addition to the original documentation.

可以在effbot.orgNew Mexico Tech 提供文档中找到绑定和事件的一般列表,除了原始文档之外,这里还列出了几个键的名称。

Here's a summary of the most common events with some keypress names explained:

以下是最常见事件的摘要,并解释了一些按键名称:

<Button-1>        Button 1 is the leftmost button, button 2 is the middle button
                  (where available), and button 3 the rightmost button.

                  <Button-1>, <ButtonPress-1>, and <1> are all synonyms.

                  For mouse wheel support under Linux, use Button-4 (scroll
                  up) and Button-5 (scroll down)

<B1-Motion>       The mouse is moved, with mouse button 1 being held down (use
                  B2 for the middle button, B3 for the right button).

<ButtonRelease-1> Button 1 was released. This is probably a better choice in
                  most cases than the Button event, because if the user
                  accidentally presses the button, they can move the mouse
                  off the widget to avoid setting off the event.

<Double-Button-1> Button 1 was double clicked. You can use Double or Triple as
                  prefixes.

<Enter>           The mouse pointer entered the widget (this event doesn't mean
                  that the user pressed the Enter key!).

<Leave>           The mouse pointer left the widget.

<FocusIn>         Keyboard focus was moved to this widget, or to a child of
                  this widget.

<FocusOut>        Keyboard focus was moved from this widget to another widget.

<Return>          The user pressed the Enter key. For an ordinary 102-key
                  PC-style keyboard, the special keys are Cancel (the Break
                  key), BackSpace, Tab, Return(the Enter key), Shift_L (any
                  Shift key), Control_L (any Control key), Alt_L (any Alt key),
                  Pause, Caps_Lock, Escape, Prior (Page Up), Next (Page Down),
                  End, Home, Left, Up, Right, Down, Print, Insert, Delete, F1,
                  F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, Num_Lock, and
                  Scroll_Lock.

<Key>             The user pressed any key. The key is provided in the char
                  member of the event object passed to the callback (this is an
                  empty string for special keys).

a                 The user typed an “a”. Most printable characters can be used
                  as is. The exceptions are space (<space>) and less than
                  (<less>). Note that 1 is a keyboard binding, while <1> is a
                  button binding.

<Shift-Up>        The user pressed the Up arrow, while holding the Shift key
                  pressed. You can use prefixes like Alt, Shift, and Control.

<Configure>       The widget changed size (or location, on some platforms). The
                  new size is provided in the width and height attributes of
                  the event object passed to the callback.

<Activate>        A widget is changing from being inactive to being active.
                  This refers to changes in the state option of a widget such
                  as a button changing from inactive (grayed out) to active.


<Deactivate>      A widget is changing from being active to being inactive.
                  This refers to changes in the state option of a widget such
                  as a radiobutton changing from active to inactive (grayed out).

<Destroy>         A widget is being destroyed.

<Expose>          This event occurs whenever at least some part of your
                  application or widget becomes visible after having been
                  covered up by another window.

<KeyRelease>      The user let up on a key.

<Map>             A widget is being mapped, that is, made visible in the
                  application. This will happen, for example, when you call the
                  widget's .grid() method.

<Motion>          The user moved the mouse pointer entirely within a widget.

<MouseWheel>      The user moved the mouse wheel up or down. At present, this
                  binding works on Windows and MacOS, but not under Linux.

<Unmap>           A widget is being unmapped and is no longer visible.

<Visibility>      Happens when at least some part of the application window
                  becomes visible on the screen.

回答by dday52

Try looking at the definition of class EventTypein the source code for the module tkinter/__init__.py.

尝试查看class EventType模块的源代码中的定义tkinter/__init__.py

Typically for me, this modules shows up as a tab in my Wing IDE if an exception occurs.

通常对我来说,如果发生异常,这个模块会在我的 Wing IDE 中显示为一个选项卡。