阻止正常键功能

时间:2016-11-22 01:24:48

标签: python tkinter keyboard keyboard-events

我绑定了一个普通的键,使用Tkinter运行一个函数,如下所示:

from tkinter import *
root = Tk()
T = Text()
T.pack()
root.bind_all('h', lambda event: print('HI'))

当您按下h键时,它会打印HI,但也会在文本框中输入h。有没有简单的方法来阻止h密钥执行其正常目的?

1 个答案:

答案 0 :(得分:2)

要禁止默认行为,请返回字符串"break"

def h_key(event):
    ...
    return "break"

root.bind_all('h', h_key)

此外,在您的情况下,您不需要使用lambda。通常,您应该避免使用lambda,除非它确实是最适合工作的工具。通常最好为绑定编写一个函数。函数更容易调试和维护。