FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Solo una llamada a Onchange de tedit. ¿Se puede?
Hola,
Mi problema es el siguiente: Tengo un Tedit y un TUpDown para insertar números. Cada vez que se modifica el valor del Tedit(ya sea por teclado o por el TUpDown) tengo que hacer una consulta a Base de Datos. Estoy usando el evento OnChange del Tedit, pero el problema es por ejemplo, si tengo el valor 2 en el Tedit y el usuario pulsa 8 veces continuas en TUpDown para cambiarlo a 10, quiero que solo se haga la consulta del último valor, no las otras 7 consultas. ¿Sabeis si esto se puede hacer?, lo mismo me ocurre si el usuario escribe 143 en el tedit, no quiero que se hagan las consultas con los valores 1 y 14, solo cuando haya terminado de escribir todo. Gracias |
#2
|
||||
|
||||
y, segun lo dicho, el OnChange se produce cuando algo cambia dentro del TEdit, aun si lo estas borrando, por lo cual no conseguiras que no se ejecute la consulta la cantidad de veces que se produce eñ OnChange. Se me ocurre que tendrias que poner la opcion (boton, o lo que sea) que diga, "hay un valor definitivo" para el TEdit.
Tambien habria que ver que tan costosa es esa consulta, ya que tal ves no le va a tu diseño/manejo otra opcion (boton, etc). PD: mirando un poco, ya dentro de delphi, esta el Evento OnExit, que es cuando el control pierde el foco, talves ahi es el momento de ejecutar la consulta. PD 1 : Echa un vistazo a la pestaña "Samples" ahi esta el "SpinEdit" es un TEdit con UpDown Incorporado, todo un solo componente. Y este serviria mejor para el OnExit, yq que en tu caso se produciria OnExit al pasar del TEdit al UpDown y aun no te has hido por completo de la operacion. Espero haber ayudado, estaremos por aqui para lo que podamos. |
#3
|
||||
|
||||
Puedes usar un TTimer para que haga la consulta, por ejemplo, 1/4 de segundo después de la última tecla.
|
#5
|
|||
|
|||
Gracias,
Ya lo he solucionado. He usado el SpinEdit y un sleep dentro del Onchange. El sleep no lo podia usar antes puesto que me daba problemas y se quedaba el foco en el TUpDown, pero con el SpinEdit no ocurre. Un saludo |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
TEdit tipo Google, se puede??? | NeoAnderson | API de Windows | 1 | 19-04-2008 18:08:46 |
Emular con cxCurrencyEdit evento OnChange de un TEdit. ¿ Alguien sabe ? | calogero | Varios | 4 | 06-06-2007 22:24:56 |
¿Como hacer una Consulta en el Onchange de un TEdit? | day_eli | Conexión con bases de datos | 8 | 28-01-2007 04:06:53 |
se puede personalizar un TEdit? | fedelphi | Varios | 4 | 05-12-2006 16:29:28 |
TEdit que acepte solo integer | Dave B. | Varios | 2 | 09-09-2004 02:14:48 |
|