Создание Frame и MiniFrame средствами WxPython
Данная статья на простых примерах покажет, как создать обычное окно Frame и
MiniFrame средствами графической библиотеки WxPython (wxpython.org).
На первом примере мы покажем как создадать Frame:
myframe.pyw
Результат работы myframe.pyw
Класс MyPanel, который является наследником класса Panel, создает
панель, главной задачей которой является быть контейнером для размещения
остальных виджетов.
Для того чтобы создать обычное окно MiniFrame с пустой панелью и таким
же самым размером(600,400), нужно поменять строки
на
Тем самым, показав, что мы собираемся наследовать все свойства не от
класса Frame, а от класса MiniFrame.
myminiframe.pyw
Результат работы myminiframe.pyw
P.S. Для того чтобы окно открывалось без сеанса MS-DOS, необходимо давать
расширение программам .pyw.
import wx class MyPanel(wx.Panel): def __init__(self, parent, log=None): wx.Panel.__init__(self, parent, -1) class MyFrame(wx.Frame): def __init__(self): wx.Frame.__init__(self, None, -1, "My Frame", size=(600,400)) panel=MyPanel(self) if __name__ == '__main__': class MyApp(wx.App): def OnInit(self): frame = MyFrame() frame.Show(True) self.SetTopWindow(frame) return True app = MyApp(False) app.MainLoop()
Результат работы myframe.pyw
Класс MyPanel, который является наследником класса Panel, создает
панель, главной задачей которой является быть контейнером для размещения
остальных виджетов.
Для того чтобы создать обычное окно MiniFrame с пустой панелью и таким
же самым размером(600,400), нужно поменять строки
class MyFrame(wx.Frame) wx.Frame.__init__(self, None, -1, "My Frame", size=(600,400))
class MyFrame(wx.MiniFrame) wx.MiniFrame.__init__(self, None, -1, "My Frame", size=(600,400))
import wx class MyPanel(wx.Panel): def __init__(self, parent, log=None): wx.Panel.__init__(self, parent, -1) class MyFrame(wx.MiniFrame): def __init__(self): wx.MiniFrame.__init__(self, None, -1, "My Frame", size=(600,400)) panel=MyPanel(self) if __name__ == '__main__': class MyApp(wx.App): def OnInit(self): frame = MyFrame() frame.Show(True) self.SetTopWindow(frame) return True app = MyApp(False) app.MainLoop()
Результат работы myminiframe.pyw
P.S. Для того чтобы окно открывалось без сеанса MS-DOS, необходимо давать
расширение программам .pyw.



Посты