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