sizers wx inicializar

damufo damufo en gmail.com
Mie Nov 14 13:59:56 CET 2007


Hola:

Tengo un formulario en el cual utilizo sizers.
El caso es que una vez lanzada la aplicacion, hasta que no cambio el 
tamaño del formulario (redimensiono) no se ordenan los objetos como 
deben (como indican los sizers). Inicialmente aparecen en su posición 
absoluta y con su tamaño absoluto.
Alguien sabe a que se debe esto?

Muchas gracias.

Utilizo
wx 2.8
python 2.5
win xp

Mi código es este:

#Boa:Frame:Frame1
import wx

def create(parent):
    return Frame1(parent)

[wxID_FRAME1, wxID_FRAME1BUTTON1, wxID_FRAME1BUTTON2, wxID_FRAME1BUTTON3,
 wxID_FRAME1PANEL1,
] = [wx.NewId() for _init_ctrls in range(5)]

class Frame1(wx.Frame):
    def _init_sizers(self):
        # generated method, don't edit
        self.gridBagSizer1 = wx.GridBagSizer(hgap=0, vgap=0)
        self.gridBagSizer1.SetRows(2)

        self.gridBagSizer1.AddWindow(self.button1, (0, 0), border=0, 
flag=0, span=(1, 1))
        self.gridBagSizer1.AddWindow(self.button2, (0, 1), border=0, 
flag=0, span=(1, 1))
        self.gridBagSizer1.AddWindow(self.button3, (1,0), border=0, 
flag=wx.EXPAND, span=(1, 2))
       
        self.panel1.SetSizer(self.gridBagSizer1)

    def _init_ctrls(self, prnt):
        # generated method, don't edit
        wx.Frame.__init__(self, id=wxID_FRAME1, name='', parent=prnt,
              pos=wx.Point(459, 265), size=wx.Size(400, 250),
              style=wx.DEFAULT_FRAME_STYLE, title='Frame1')
        self.SetClientSize(wx.Size(392, 216))

        self.panel1 = wx.Panel(id=wxID_FRAME1PANEL1, name='panel1', 
parent=self,
              pos=wx.Point(0, 0), size=wx.Size(392, 216),
              style=wx.TAB_TRAVERSAL)

        self.button1 = wx.Button(id=wxID_FRAME1BUTTON1, label='button1',
              name='button1', parent=self.panel1, pos=wx.Point(0, 0),
              size=wx.Size(75, 23), style=0)

        self.button2 = wx.Button(id=wxID_FRAME1BUTTON2, label='button2',
              name='button2', parent=self.panel1, pos=wx.Point(75, 0),
              size=wx.Size(75, 23), style=0)

        self.button3 = wx.Button(id=wxID_FRAME1BUTTON3, label='button3',
              name='button3', parent=self.panel1, pos=wx.Point(0, 23),
              size=wx.Size(75, 23), style=0)

        self._init_sizers()

    def __init__(self, parent):
        self._init_ctrls(parent)
------------ próxima parte ------------
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes


Más información sobre la lista de distribución Python-es