ich habe noch ein Problem gefunden, zu dem ich im Netz der Netze keine Lösung gefunden habe.
Ich habe ein Programm, welches einige Zeit damit verbringt, Daten zu laden, zu bearbeiten und zu speichern. Damit der Benutzer nicht denkt, es würde nichts mehr passieren, wollte ich einen kleinen Dialog zeigen, welcher Rückmeldung über die momentane Tätigkeit gibt.
Dafür habe ich mit eine kleine Klasse PleaseWaitDialog gebastelt. Nun wird dieser Dialog aber nicht richtig angezeigt, bzw. das Label darauf gar nicht.
Um mal zu zeigen was ich meine, hier ein kleines Code-Sample:
Code: Alles auswählen
import wx
class PleaseWaitDialog(wx.Dialog):
def __init__(self, parent, ID, title, modus):
wx.Dialog.__init__(self, None, ID, title, style = wx.THICK_FRAME)
self.sizer = wx.BoxSizer(wx.VERTICAL)
if modus == "save":
self.label = wx.StaticText(self, -1, "Saving the evaluation data!\n"
"Please wait.", style = wx.ALIGN_CENTRE)
if modus == "analysis":
self.label = wx.StaticText(self, -1, "Running analysis!\n"
"Please wait.", style = wx.ALIGN_CENTRE)
self.sizer.Add(self.label, 0, wx.ALIGN_CENTRE|wx.ALL, 10)
self.SetSizer(self.sizer)
self.sizer.Fit(self)
class MyApp(wx.App):
def OnInit(self):
dialog = PleaseWaitDialog(self, -1, "Running analysis", "analysis")
dialog.Show()
##for i in range(0, 100000):
## print i,
##dialog.Destroy()
return True
def main():
app = MyApp(0)
app.MainLoop()
if __name__ == "__main__":
main()
Hat hier jemand eine Lösung?
Gruß
Till