Я пытаюсь изменить элементы управления Panel, обновить их, а затем продолжить выполнение кода. Проблема, по-видимому, в том, что панель ожидает простоя, прежде чем она обновится. Конечно, я пробовал обновить, а также GetSizer().Layout() и даже отправил событие изменения размера в фрейм с помощью метода SendSizeEvent(), но безрезультатно. Я тут в недоумении, мне сложно поверить, что нет возможности принудительно перерисовать эту панель. Вот код, который изменяет элементы управления:
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()
Кто-нибудь еще сталкивался с чем-то подобным? И как вы это решили, если да?
self.Show()
? - person Dana the Sane   schedule 05.08.2009