Найти - Пользователи
Полная версия: вопрос по wx.frame
Начало » Python для новичков » вопрос по wx.frame
1
mabut
Объясните пожалуйста. Когда создаю оконное приложение. Создаю класс
class window(wx.Frame):
методы….

Зачем я определяю wx.Panel? И если я создаю к примеру wx.staticText в не это класса, как мне сделать так чтобы он отобразился.
Evgen_irk
Отдельный класс wx.Panel создается для того, чтобы в нем расположить виджеты, например, кнопки, текст и т.п. и не смешивать с кодом wx.Frame + повторное использование этого класса в других приложениях.

Небольшой пример без использования wx.Panel
class Frame(wx.Frame):
    def __init__(self, *args, **kwargs):
        kwargs['size'] = (300, 100)
        super(Frame, self).__init__(*args, **kwargs)
        button = wx.Button(self, wx.ID_ANY, "Python calc")
        button_del = wx.Button(self, wx.ID_ANY, "Clear") 
        self.label = wx.StaticText(self, wx.ID_ANY, "0")
        box = wx.BoxSizer(wx.VERTICAL)
        b_box = wx.BoxSizer()
        b_box.Add(button, 0)
        b_box.Add(button_del, 0)
        box.Add(b_box, 0)
        box.Add(self.label, 0)
        self.SetSizer(box)
        self.Bind(wx.EVT_BUTTON, self.OnPress, button)
        self.Bind(wx.EVT_BUTTON, self.OnClear, button_del)
    def OnPress(self, event):
        for i in xrange(101):
            sum += i
        self.label.SetLabel(str(sum))
    def OnClear(self, event):
        self.label.SetLabel('0')
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB