Varias sobre textbox :)

Catalin Lungu lcatalin en siadv.com
Mie Ene 19 08:46:34 CET 2005


Hola,
Para controlar las teclas en el textbox te creas el textbox:
textCtrl = wxTextCtrl(id=-1, parent=parent, pos=wxPoint(8, 16), 
size=wxSize(128, 24), style=0, value='')
declaras el evento que saltará a las pulsaciones del Intro  :
EVT_TEXT_ENTER(textCtrl, -1, OnTextCtrlTextEnter)

este saltará a cualquier otra tecla.
EVT_CHAR(textCtrl, OnTextCtrlChar)

con event.GetKeyCode sabrás lo que has pulsado.

De esta forma es bastante sencillo filtrar las teclas.

Saludos.

----- Original Message ----- 
From: "Ariel Nardelli" <pan_python en yahoo.com.ar>
To: <python-es en aditel.org>
Sent: Tuesday, January 18, 2005 8:34 PM
Subject: [Python-es] Varias sobre textbox :)


> Hola!!
>
> Bueno sigo cada dia aprendiendo mas sobre python el cual lo uso con wx 
> para hacer el entorno grafico.
>
> La cosa es que tengo que usar textbox para poder ingresar datos y se me 
> estan prensentando problemas a la hora de validar los datos ingresados.
> Si bien puedo validarlos despues de haberlos ingresados (que se ingresen 
> solo numeros o solo letras o solo una letra en fin todas las validaciones 
> post ingresos) la idea mia era justamente en terminados casos ir validando 
> directamente al momento de ingresar los datos...
> Por ejemplo...
>
> Tengo este texbox...
>
> self.tc_ncon = wxTextCtrl(self, -1, "", 
> style=wxTE_PROCESS_ENTER|wxTE_PROCESS_TAB)
>
> El cual solo pueden ingresarse numeros de hasta 6 digitos y despues buscar 
> ese nro en la base de datos para mostrar resultados.
>
> El largo o sea que solo puedan ingresarse 6 caracteres lo tengo definido 
> con
>
> self.tc_ncon.SetMaxLength(6)
>
> pero la idea es que al momento de ir ingresando los datos ya solo me deje 
> ingresar numeros no otra cosa solo numeros, incluso al ser un campo int ni 
> siquiera me deje ingresar . ni , solo entre 0 y 9, se puede hacer este 
> control en tiempo de ejecucion?.
>
> Siguendo, tengo puesto el PROCESS_ENTER y el PROCESS_TAB pero no se como 
> hacer que funcione..., en este texbox en especial quiero que al apretar 
> ENTER se actvie una funcion que es boton buscar que esta al lado, y la 
> idea es que la persona que esta cargando el numero no tenga que cruzarse 
> con el raton sino que directamente al apretar enter se ejecute la funcion 
> de busqueda, pero no logro saber como hacer para interceptar el enter en 
> este texbox especifico, lo mismo me pasa con el TAB, que no me funciona, 
> yo puedo apretar tabs pero no se me pasa al proximo texbox sino que no 
> hace nada y la idea mia es que al apretar tab tenga casi el mismo 
> comportamiento que el enter, que me valide los datos cargados y que 
> continue con el proximo orden que tengo definido (ya se tengo -1 en el 
> orden tab pero la idea es cargar un order tab, aunque se genera ese orden 
> en tiempo de ejecucion) y la idea del tab es la misma que cuando se aprete 
> me queden los datos en ese texbox validado sino pueden saltarse la 
> validacion apretando tab.
> La validacion en este caso especifico es que quiero campos solo numericos 
> pero tambien se me presentan en otros casos que solo pase si el dato 
> cargado existe en una base de datos (el tipico caso de poner el nro de 
> codigo postal y que largue la ciudad).
> En fin, todos sabemos que la carga de datos es uno de los puntos mas 
> criticos de todo sistema, la carga tiene que ser veloz, usar lo menos 
> posible el raton que la validacion sea en linea al momento que la persona 
> esta cargando los datos es ahi donde hay que hacer la mayor validacion 
> posible a fin de evitar datos erroneos en el sistema.
>
> Bueno, espero que alguien pueda ayudarme...
>
> Saludos, 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 




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