Tkinter提醒MessageBox出现

时间:2012-12-16 01:05:51

标签: python tkinter messagebox

我正在尝试使用Tkinter创建提醒。

我可以给出适当的时间并同时更改标签的文本,但我也想显示一个MessageBox。

我的代码如下: (我得到一个错误:“TkMessageBox未定义”)

    from Tkinter import *
    import time


    form1=Tk()
    form1.title('Project')
    form1.resizable(width=FALSE, height=FALSE)
    form1.geometry('1032x680+200+200')

    time1 = ''
    clock = Label(form1, font=('times', 20, 'bold'), bg='red')
    clock.pack(fill=BOTH, expand=1)
    def tick():
        global time1
        time2 = time.strftime('%H:%M:%S')
        if time2 != time1:
            time1 = time2
            clock.config(text=time2)
        clock.after(200, tick)
    tick()
    reminder = Label(form1, font=('remind', 20, 'bold'),bg='green')
    reminder.pack(fill=BOTH , expand=1)
    reminder.config(text="o reminder")
    def hour():
        global x,y,z
        x=float(time.strftime("%H"))
        y=float(time.strftime("%M"))
        z=float(time.strftime("%S"))
        if y==37: reminder.config(text="First")
        if y==38:                       
            reminder.config(text="Second") 
            tkMessageBox.showinfo(text='Something',message='Else') 
        reminder.after(200,hour)

    hour()

    form1.mainloop()

如果我发表评论:

  tkMessageBox.showinfo(text='Something',message='Else')

..一切都好。

但是我怎么能出现一个Messagebox ...... ??

提前致谢。

2 个答案:

答案 0 :(得分:2)

tkMessageBox实际上是它自己的模块。您需要单独导入tkMessageBox。

import tkMessageBox

此外,您似乎需要将Tkinter循环传递到消息框:

tkMessageBox.showinfo(form1,text='Something',message='Else')

答案 1 :(得分:0)

我遇到了同样的问题。诀窍是直接从tkinter包导入,如下所示:

import tkinter.messagebox as MB

然后为了使用消息框:

MB.showinfo("heading text","body message")

我希望这会有所帮助!!