Ver Mensaje Individual
  #4 (permalink)  
Antiguo 19/09/2010, 22:58
Avatar de razpeitia
razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: wx.lib.masked

Te funciona el demo? Si es así entonces dudo que sea problema de la librería.

Igual te recomendaría volver a lo básico.

Código Python:
Ver original
  1. import wx
  2.  
  3. def validate(value):
  4.     try:
  5.         return float(value)
  6.     except ValueError:
  7.         pass
  8.  
  9. class Frame(wx.Frame):
  10.     def __init__(self, *args, **kwargs):
  11.         wx.Frame.__init__(self, *args, **kwargs)
  12.         Panel(self)
  13.        
  14.  
  15. class Panel(wx.Panel):
  16.     def __init__(self, parent, *args, **kwargs):
  17.         wx.Panel.__init__(self, parent, *args, **kwargs)
  18.  
  19.         self.Txt = Txt = wx.TextCtrl(self, -1)
  20.         Txt.Bind(wx.EVT_TEXT_ENTER, self.OnClick)
  21.        
  22.         Btn = wx.Button(self, label="Click me!", pos=(0, 30))
  23.         Btn.Bind(wx.EVT_BUTTON, self.OnClick)
  24.        
  25.  
  26.     def OnClick(self, *event):
  27.         data = self.Txt.GetValue()
  28.         if( validate(data) is not None):
  29.             print "%s es un flotante" % data
  30.         else:
  31.             print "%s no es un flotante" % data
  32.  
  33. app = wx.App(False)
  34. f = Frame(None, title="Titulo")
  35. f.Show()
  36. app.MainLoop()

Puedes redondear un flotante con round(num, ndigits).