ich habe eine Programm(wx.App und wx.Frame) und möchte gerne während der Initialisierungsphase(__init__) ein Frame anzeigen, dass die aktuellen Initialisierungsschritte anzeigt. Bedingt durch interne Funktionalität(Abfragen,...) kann der Programmstart länger dauern. Deshalb möchte ich dem Anwender gerne eine Rückkopplung geben, welcher Initialisierungsschritt gerade läuft.
Hierzu habe ich in der __init__ ein Frame aufgerufen und angezeigt
Code: Alles auswählen
def __init__(self, parent):
from Views import viewInit
reload(viewInit)
objView = viewInit.create(parent)
#refresh Controls
wx.GetApp().Yield()
objView.Show()
#stuff
objView.Destroy()
Das Problem ist aber, dass die darauf integrierten Controls(wx.StaticText) nicht gezeichnet werden.
Ich habe versucht dies mit einem(wx.GetApp().Yield() bzw. wx.Yield()) zu lösen, hat aber nichts gebracht. Erst nachdem das Hauptframe fertig initialisiert ist, sind auch alle Controls im Initialisierungsframe dargestellt.
Wie kann ich dieses Problem umgehen???
Gibt es programmiertechnisch gesehen bessere Alternativen um den Anwender eine Rückkopplung zum Initialisierungsstand zu geben???
Danke
gruss george