Wie erzwingen Sie die Aktualisierung der ein wx.Panel?

Ich versuche, ändern Sie die Steuerelemente des Bedienfelds, haben Sie es zu aktualisieren, dann weiter auf der Ausführung von code. Das problem scheint zu sein, dass das Panel wartet auf Leerlauf, bevor Sie selbst aktualisieren. Ich habe versucht, aktualisieren der Kurs als auch GetSizer().Layout () - und schickte sogar ein resize-Ereignis des Rahmens mit der SendSizeEvent () - Methode, aber ohne Erfolg. Ich bin ratlos hier, ich finde es schwer zu glauben, dass es keine Möglichkeit gibt, zu zwingen, ein Neuzeichnen des Fensters. Hier ist der code, änderungen der Steuerung:

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 jemand sonst begegnet so etwas? Und wie hast du es beheben, wenn ja?

  • Haben Sie versucht self.Show()?
InformationsquelleAutor Fry | 2009-08-05
Schreibe einen Kommentar