1

我正在使用pythonWxpythonGUI 工作设计一个软件。我想在固定的时间内向用户显示一条消息,然后让它自动消失。我无法弄清楚如何做到这一点。请帮助...提前谢谢..

4

2 回答 2

3

您可以使用 wx.BusyInfo 或 wx.lib.agw.pybusyinfo。这是一个显示 3 秒非模态消息的示例。要摆脱消息框对话框,只需将其名称 ref 设置为 None。

import time

import wx
import wx.lib.agw.pybusyinfo as PBI

def showmsg():
    app = wx.App(redirect=False)
    msg = 'this is a test'
    title = 'Message!'
    d = PBI.PyBusyInfo(msg, title=title)
    return d    

if __name__ == '__main__':
    d = showmsg()
    time.sleep(3)
    d = None

祝你好运,迈克

于 2012-09-25T14:54:27.583 回答
1

像这样的东西应该工作:

import threading

msgbox = wx.MessageBox('Hey user, there is something I want to tell you!', 
                       'Alert', wx.ICON_EXCLAMATION | wx.STAY_ON_TOP)
threading.Timer(10.0, msgbox.EndModal).start()

我现在没有机会测试它,但我认为重要的是总体思路。

于 2012-09-23T12:16:57.530 回答