运行 绑定到 python tkinter 中的小部件的函数

Running a function which is binded to a widget in python tkinter

import tkinter 
from tkinter import *
def printword(event):
    print("hello")

app = Tk()

textpane = tkinter.Text(app)
textpane.bind('<Control-Key-s>',printword)
textpane.pack()

printword()

app.mainloop()

当我 运行 代码时,它给我打字错误

TypeError: printword() missing 1 required positional argument: 'event'

我该如何解决这个问题?

假设您的函数实际上并未在其主体中使用 event 对象,最简单的解决方案是将事件参数设为可选:

def printword(event=None):
    print("hello")

这让你可以在没有参数的情况下调用它 (printword()),同时还允许它接受从 tkinter 的事件处理机制传入的参数。