我正在尝试使用以下方法显示信息窗口:
tkinter.messagebox.showinfo("info", "message")
然而,当我使用from tkinter import *
时,出现了错误。
如果我也导入import tkinter.messagebox
,问题就得到了解决。
所以我很困惑。难道from tkinter import *
不应该导入tkinter
中的所有东西吗?
我正在尝试使用以下方法显示信息窗口:
tkinter.messagebox.showinfo("info", "message")
然而,当我使用from tkinter import *
时,出现了错误。
如果我也导入import tkinter.messagebox
,问题就得到了解决。
所以我很困惑。难道from tkinter import *
不应该导入tkinter
中的所有东西吗?
from tkinter import *
from tkinter import messagebox
root = Tk()
root.title("test")
root.geometry("300x300")
app = Frame(root)
app.grid()
button1 = Button(app, text = " exit " , width=2, command=exit)
button1.grid(padx=110, pady=80)
def dialog():
var = messagebox.showinfo("test" , "hoi, dit is een test als je dit leest is het gelukt")
button2 = Button(app, text = " uitleg " , width=4, command=dialog)
button2.grid()
root.mainloop(3)
你只需要从tkinter导入messagebox,然后使用messagebox。(例如)showinfo("测试","blablablabla")
from tkinter import *
会加载Tkinter的__init__.py
,但不包括messagebox。为了解决这个问题,我们需要执行import tkinter.messagebox
来加载messagebox的__init__.py
。
from module import x
的格式,那么你不需要在导入的资源前面加上模块名。所以尝试这样写:messagebox.showinfo("info", "message")
import tkinter.messagebox
,那么您需要使用模块进行引用,这就是为什么在这种情况下不会出现错误的原因。messagebox
方法。import tkinter as tk
tk.messagebox.showinfo("info name","This is a Test")