Я создаю ноутбук WxPython после вызова из пункта меню, но, к сожалению, он не отображается правильно (видится только небольшая синяя фигура в углу). Я должен вручную изменить размер окна, и он возвращается к рабочему порядку, как и второе изображение.WxPython не отображается правильно
Код:
def load_notebook(self):
panel = wx.Panel(self)
sizer = wx.BoxSizer(wx.VERTICAL)
notebook = apps.srp.main.Notebook(panel)
sizer.Add(notebook, 1, wx.ALL | wx.EXPAND, 5)
panel.SetSizer(sizer)
Вещи, которые я пробовал:
self.Layout()
self.Refresh()
self.Update()
notebook.Layout()
notebook.Refresh()
notebook.Update()
как в главном каталоге и папку, в которой ноутбук и панели располагается.
Использование
- WxPython-Phoenix (3.0.3.dev1820 + 49a8884)
- Python 3.4
- OSX 10.10
Мне не хватает части, где вы на самом деле размещаете панель. Я полагаю, что в вашем окне есть sizer, тогда вы должны добавить панель в sizer. –
Я предполагаю, что родитель панели, созданной вами в load_notebook, не дает места для ноутбука. Или вам нужно добавить эту панель в sizer родителя. Другими словами, нам нужно больше узнать о вашем коде. Хорошим инструментом для отладки таких вопросов, как это, является WIT - http://wiki.wxpython.org/Widget%20Inspection%20Tool – Werner
@Werner Спасибо за этот отзыв. Кадр отображается корректно, но (действительно) дочерний элемент 'panel', который содержит фактический блокнот, закручен - он имеет размер 20x20 пикселей, что является маленькой синей формой, которую я вижу. – MaxQ