运行 绑定到 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 的事件处理机制传入的参数。
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 的事件处理机制传入的参数。