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

时间:2016-06-07 16:36:11

标签: python-2.7 tkinter tkmessagebox

我写了以下代码

    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的文档没有提供任何示例。

1 个答案:

答案 0 :(得分:1)

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

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

假设它是一个班级的成员。