【问题标题】:How to bind Ctrl+/ in python tkinter?如何在 python tkinter 中绑定 Ctrl+/?
【发布时间】:2013-04-18 11:54:46
【问题描述】:
<Control-Shift-Key-0>
<Control-Key-plus>

有效但

<Control-Key-/>

没有。

我无法在 python 中绑定 ctrl + /。是否有所有可能键的文档?

【问题讨论】:

    标签: python key-bindings


    【解决方案1】:

    使用&lt;Control-slash&gt;:

    def quit(event):
        print "you pressed control-forwardslash"
        root.quit()
    
    root = tk.Tk()
    root.bind('<Control-slash>', quit)      # forward-slash
    # root.bind('<Control-backslash>', quit)  # backslash
    root.mainloop()
    

    我没有指向这些事件名称的完整列表的链接。这是我收集的部分列表:

    | event                 | name                  |
    | Ctrl-c                | Control-c             |
    | Ctrl-/                | Control-slash         |
    | Ctrl-\                | Control-backslash     |
    | Ctrl+(Mouse Button-1) | Control-1             |
    | Ctrl-1                | Control-Key-1         |
    | Enter key             | Return                |
    |                       | Button-1              |
    |                       | ButtonRelease-1       |
    |                       | Home                  |
    |                       | Up, Down, Left, Right |
    |                       | Configure             |
    | window exposed        | Expose                |
    | mouse enters widget   | Enter                 |
    | mouse leaves widget   | Leave                 |
    |                       | Key                   |
    |                       | Tab                   |
    |                       | space                 |
    |                       | BackSpace             |
    |                       | KeyRelease-BackSpace  |
    | any key release       | KeyRelease            |
    | escape                | Escape                |
    |                       | F1                    |
    |                       | Alt-h                 |
    

    【讨论】:

    • 那么如何添加反斜杠作为绑定呢?
    • 使用&lt;Control-backslash&gt;
    • @unutbu 我意识到问题出在别的地方。 Command+Down 在 tkinter 中仅触发向下箭头,但是使用 Command+Down 会选择下面的框而不是文本区域,这使得从列表中选择项目成为可能。所以我想我需要找出如何在没有命令键的情况下选择该区域。有什么想法吗?
    • @Joop:我不确定,但我认为答案是子类化小部件并覆盖Command+Down 绑定。请参阅effbot.org/tkinterbook/tkinter-events-and-bindings.htm(搜索“覆盖”一词)。
    • 感谢您的帮助。我还没有设法修复它。如果你有时间看它,我试图在这里清楚地提出我的问题:stackoverflow.com/q/42181333/3972558
    【解决方案2】:

    这里是所有 tk keysysm 代码的列表: https://www.tcl.tk/man/tcl8.6/TkCmd/keysyms.htm

    我要找的两个是&lt;Win_L&gt;&lt;Win_R&gt;

    【讨论】:

    • 这是一个非常有用的资源,用它来找到如何绑定一个Ctrl按钮的释放。
    猜你喜欢
    • 2017-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-11
    • 1970-01-01
    • 1970-01-01
    • 2014-02-04
    • 2017-06-08
    相关资源
    最近更新 更多