textbox, sacar Retorno de carro o enter...
FERNANDO VILLARROEL
fvillarroel en yahoo.com
Lun Ene 24 12:22:59 CET 2005
Hola yo trataria con lo siguiente:
EVT_TEXT_ENTER(.........
Aca controlas cuando pulsen enter en tu text_ctrl y
luego validas que lo que esta dentro sea numerico por
ejm:
try:
a=int(self.text_ctrl_1.getvalue())
....
....
except ValueError:
wxMessageBox("El valor ingresado no es Numerico")
self.text_ctrl_1SetValue("")
self.text_ctrl_1.SetFocus()
Ves aca utilizo la funcion int para obtener al dato
numerico y si no lo es lo controlo mediante el
tratamiento de excepciones...
Suerte
--- Ariel Nardelli <pan_python en yahoo.com.ar> wrote:
> Hola!
>
> Tengo un wxTextCtrl donde ingreso basicamente
> numeros, pero esoy con el
> problema que al pulsar el Intro (o sea el enter del
> telcado numerico) me
> pasa con caracter 13 pero me agrega en la variable
> el caracter del enter
> que es invisible y no puedo sacarlo y no se como
> hacer para evitar que
> se me meta en la variable...
>
> Uso Python + wxwin en Debian.
>
> Este es mi codigo, aca lo defino...
>
> self.tc_ncon = wxTextCtrl(self, 1, "",
> style=wxTE_PROCESS_ENTER|wxTE_PROCESS_TAB)
> self.tc_ncon.SetToolTipString("Introduzca el
> Nro de Contrato a
> procesar")
>
> # TB_ncon
> EVT_TEXT(self, 1,self.funciontex)
> EVT_CHAR(self.tc_ncon, self.funcionkey)
>
> y las funciones..
>
> # Funcion de prueba de teclado. Esta es para
> probar como imprime
> nomas...
> def funciontex(self,event):
> key = event.GetString()
> print key,len(key)
> return
>
> def funcionkey(self,event):
> deja = '0123456789'
> key = event.GetKeyCode()
> print key
> if key == 9: # Tecla TAB Pasa foco al
> boton.
> self.bbuscar.SetFocus()
> event.Skip()
> return
> if key == 13: # Enter directamente busca el
> dato
> event.Skip()
> self.rutbuscar()
> return
> if key < WXK_SPACE or key == WXK_DELETE or
> key > 255:
> event.Skip()
> return
> if chr(key) in deja:
> event.Skip()
> return
> return
>
>
> Asi filtro que solo se me ingrese numeros sin signo
> - ni . ni , pero no
> logro sacarme de encima el enter, pero aunque pusle
> el enter se me
> ejecuta lo que esta bajo el key == 13 eso me
> funciona pero ademas "me
> agrega" el caracter dentro de la variable, lo se
> porque al pusar enter
> el len de la variable me suma uno mas, evidentemente
> me esta metiendo el
> caracter dentro de la variable.
>
> Si alguien puede darme una manito se lo voy a
> agradecer!!!
>
> Ariel
>
> --
> Saludos
> Panflin
>
> NO al limite de adsl de TELECOM
> Firma YA el petitorio NACIONAL para que TELECOM no
> nos estafe con el limite del ADSL, la direccion es:
> http://peticionbandaancha.com/
>
> www.reconquista.com.ar
>
> _______________________________________________
> Python-es mailing list
> Python-es en aditel.org
> http://listas.aditel.org/listinfo/python-es
>
__________________________________
Do you Yahoo!?
Meet the all-new My Yahoo! - Try it today!
http://my.yahoo.com
------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es
Más información sobre la lista de distribución Python-es