Wie erzwingen Sie die Aktualisierung eines wx.Panel?

Ich versuche, die Steuerelemente eines Panels zu ändern, zu aktualisieren und dann mit der Codeausführung fortzufahren. Das Problem scheint zu sein, dass das Panel auf Leerlauf wartet, bevor es sich selbst aktualisiert. Ich habe sowohl refresh als auch GetSizer (). Layout () ausprobiert und sogar ein Größenänderungsereignis mit der SendSizeEvent () -Methode an den Frame gesendet, aber ohne Erfolg. Ich bin hier ratlos, ich finde es schwierig zu glauben, dass es keine Möglichkeit gibt, eine Neuzeichnung dieses Panels zu erzwingen. Hier ist der Code, der die Steuerelemente ändert:

def HideButtons(self):
        self.newButton.Show(False)
        self.openButton.Show(False)
        self.exitButton.Show(False)
        self.buttonSizer.Detach(self.newButton)
        self.buttonSizer.Detach(self.openButton)
        self.buttonSizer.Detach(self.exitButton)
        loadingLabel = wx.StaticText(self.splashImage, wx.ID_ANY, "Loading...", style=wx.ALIGN_LEFT)
        loadingLabel.SetBackgroundColour(wx.WHITE)
        self.buttonSizer.Add(loadingLabel)
        self.GetSizer().Layout()
        self.splashImage.Refresh()

Hat noch jemand so etwas erlebt? Und wie haben Sie es gelöst, wenn ja?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage