我似乎无法在 Python 2.7 中得到 tkMessageBox.askokcancel 来开始工作

I can't seem to get tkMessageBox.askokcancel in Python 2.7 to get to work

我写了下面的代码

    closeButton = Button(self, text="Close",command=self.askyesno)
    closeButton.pack(side=RIGHT, padx=5, pady=5)
    okButton = Button(self, text="OK")
    okButton.pack(side=RIGHT)

def askyesno():
    res = tkMessageBox.askokcancel(title="Quit", message="Do you want to quit?")
    if res == "yes":
    self.quit()

每当我按下关闭按钮时,python 崩溃 与消息 类型错误:askyesno() 没有参数,给定 1。 网上有很多像我这样的例子。我确定它们有效。我究竟做错了什么。我找到的所有示例都有这个问题,并且 tkMessageBox 的文档没有提供任何示例。

这不是 tkMessageBox,而是您的功能。你应该这样定义它:

#def askyesno():    # Not like this
def askyesno(self):

假设它是 class 的成员。