-1

我正在尝试使用 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')

..一切都好。

但是我怎样才能显示一个消息框...??

提前致谢。

4

2 回答 2

2

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

import tkMessageBox

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

tkMessageBox.showinfo(form1,text='Something',message='Else')
于 2012-12-16T01:17:12.473 回答
0

我只是有同样的问题。诀窍是直接从 tkinter 包中导入,如下所示:

import tkinter.messagebox as MB

然后为了使用消息框:

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

我希望这有帮助!!

于 2015-03-18T18:38:04.327 回答