De todas formas, veo que si sustituyo esta línea:
self.Bind(wx.EVT_RADIOBOX, self.UnaReaccion, NuevoControl)
Por esto:
self.Bind(wx.EVT_RADIOBOX, self.UnaReaccion, self.LosControles[NrControlActual])

Entonces no se me repiten los eventos.
¿Será que hay algo más mal escrito en el agregado de RadioBox y asignación de eventos?


En/na Oswaldo Hernández ha escrit:
Narcis Garcia - GiLUG escribió:
...

Lo que no comprendo es porqué la función de evento se ejecuta 3 veces cuando el usuario pulsa 1 sola vez.


No es recomendable crear los objetos directamente sobre wx.Frame, una de las consecuencias es la posible duplicidad de eventos.

Lo correcto es crear un wx.Panel que actúe de fondo del Frame y crear los objetos sobre el panel.

class miFrame(wx.Frame):
    def __init__(self, *args, **kwds):
        wx.Frame.__init__(self, *args, **kwds)
        FondoFrame = wx.Panel(self, -1)
        # creacion de objetos sobre el panel de fondo
        objeto = wx.RadioBox(FondoFrame, -1)
        ...

_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a