textbox, sacar Retorno de carro o enter...
Ariel Nardelli
pan_python en yahoo.com.ar
Lun Ene 24 19:43:50 CET 2005
Catalin Lungu wrote:
> Esto te pasa por no usar los eventos adecuados.
> Ya te lo he dicho que para tratar el Enter hay que usar EVT_TEXT_ENTER.
> Mira en la documentación de wx y veras que el EVT_CHAR no está
> definido para los TextCtrl sino que lo hereda del wxWindow.
> Pon un debug en evento EVT_CHAR y mira cuanto veces salta al pulsar
> una tecla, además de su evento.
> Otra cosa que no entiendo es por que pones tantos return si no
> devuelves nada.
> Te aconsejo que uses EVT_TEXT_ENTER para el Enter y EVT_TEXT para las
> demás teclas.
>
> Un saludo,
> Catalin
Bueno no me retes, rescien estoy aprendiendo!! :)
Ok ahi con el event enter ya me funciono!!! asi que ya me anda perfecto
mi super rutina, hasta pude agregar que F12 tenga el mismo efecto que
tab y el F11 retrocedan asi me hice un sistema paralelo de movimiento de
teclado para poder manetener lo que estaba hecho en los sistemas
anteriores y que los operadores estaban acostumbrados a usar..
Gracias por el dato!!!
Ariel
> ----- Original Message ----- From: "Ariel Nardelli"
> <pan_python en yahoo.com.ar>
> To: <python-es en aditel.org>
> Sent: Monday, January 24, 2005 5:56 AM
> Subject: [Python-es] textbox, sacar Retorno de carro o enter...
>
>
>> 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
>
>
> _______________________________________________
> Python-es mailing list
> Python-es en aditel.org
> http://listas.aditel.org/listinfo/python-es
--
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
Más información sobre la lista de distribución Python-es