作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我刚刚开始使用 Python 的 tkinter
GUI 工具。在我的代码中,我创建了一个带有一个按钮的简单 GUI,如果用户单击该按钮,我想向他们显示一个消息框
。
目前,我使用 tkinter.messagebox.showinfo
方法。我使用 IDLE 在 Windows 7 计算机上编写代码。如果我从 IDLE 运行代码,一切正常,但如果我尝试在 Python 3 解释器中独立运行它,它就不再工作了。相反,它将此错误记录到控制台:
AttributeError:'module' object has no attribute 'messagebox'
你有什么建议给我吗?我的代码是:
import tkinter
class simpleapp_tk(tkinter.Tk):
def __init__(self,parent):
tkinter.Tk.__init__(self,parent)
self.parent = parent
self.temp = False
self.initialize()
def initialize(self):
self.geometry()
self.geometry("500x250")
self.bt = tkinter.Button(self,text="Bla",command=self.click)
self.bt.place(x=5,y=5)
def click(self):
tkinter.messagebox.showinfo("blab","bla")
if __name__ == "__main__":
app = simpleapp_tk(None)
app.title('my application')
app.mainloop()
最佳答案
messagebox
以及一些其他模块(如 filedialog
)不会在您 import tkinter
时自动导入。根据需要使用 as
和/或 from
显式导入它。
>>> import tkinter
>>> tkinter.messagebox.showinfo(message='hi')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'messagebox'
>>> import tkinter.messagebox
>>> tkinter.messagebox.showinfo(message='hi')
'ok'
>>> from tkinter import messagebox
>>> messagebox.showinfo(message='hi')
'ok'
关于python - tkinter.messagebox.showinfo 并不总是有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29774938/
我是一名优秀的程序员,十分优秀!