我正在分析图像,处理需要一些时间。我希望当用户点击“分析”时弹出一个对话框。按钮。我需要它是无模式的,所以它不会中断我的应用程序的流程(因此分析实际发生)。我只是想让它显示"分析图像......"直到分析完成,此时它消失了(意思是我不想要任何按钮)。以下是我到目前为止的情况:
class MessageDialog(wx.Dialog):
def __init__(self, message, title):
wx.Dialog.__init__(self, None, -1, title,size=(300, 120))
self.CenterOnScreen(wx.BOTH)
text = wx.StaticText(self, -1, message)
box = wx.BoxSizer(wx.VERTICAL)
box.Add(text, 1, wx.ALIGN_CENTER, 10)
self.SetSizer(box)
我使用以下命令从我的主应用程序框架中调用它:
msg_dialog = MessageDialog("Analyzing image...", "Analyzing")
msg_dialog.Show()
# Do some stuff.....
msg_dialog.Destroy()
当我使用msg_dialog.Show()时,"分析图像......"文字没有显示出来。如果我将其更改为msg_dialog.ShowModal(),则会显示文本。我不能使用ShowModal(),因为它会暂停我的程序,从而破坏了盒子的用途。关于发生了什么的任何想法?谢谢你的帮助。