tkinter showinfo python 3

tkinter showinfo python 3,tkinter,messagebox,python-3.4,Tkinter,Messagebox,Python 3.4,我正在尝试使用显示信息窗口 tkinter.messagebox.showinfo("info", "message") 但是,在使用tkinter import* 如果我还有import tkinter.messagebox 所以我很困惑。从tkinter导入的不是应该导入tkinter中的所有内容吗?如果使用从模块导入的格式,则不会在导入的资源前面加上模块前缀。所以试试看 messagebox.showinfo("info", "message") 如果按如下方式导入:import tk

我正在尝试使用显示信息窗口

tkinter.messagebox.showinfo("info", "message")
但是,在使用tkinter import*

如果我还有
import tkinter.messagebox


所以我很困惑。从tkinter导入的
不是应该导入tkinter中的所有内容吗?

如果使用从模块导入的
格式,则不会在导入的资源前面加上模块前缀。所以试试看

messagebox.showinfo("info", "message")
如果按如下方式导入:
import tkinter.messagebox
将其与模块一起引用,这就是为什么在这种情况下不会出现错误

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(“test”,“blablabla”)

也可以尝试此方法访问
messagebox
方法

import tkinter as tk

tk.messagebox.showinfo("info name","This is a Test")

从tkinter导入*
将加载tkinter的
\uuuu init\uuuuuuuuuuuupy
,其中不包括messagebox,因此为了解决这个问题,我们需要导入tkinter.messagebox
来加载messagebox的
\uuuuuuuuuuuuuuuuupy