Busqueda incremental en un Edit
Hola estoy usando Delphi 7 y MySQL. Quería saber como hacer una búsqueda incremental, como la de los buscadores de Internet. Mi intención es que mientras escriba dentro de un Edit, abajo de este aparezcan las distintas opciones, luego presionar Enter y que la opción elegida pase a una grilla.
Muchas Gracias. |
en la parte inferior de este hilo tiens muchos enlaces
|
Hola.
Creo que vas a lograr un efecto similar a lo que buscas usando un TComboBox con su propiedad Style = csSimple:
Saludos. |
Gracias ecfisa por la ayuda.
|
Aque te refieres cuando pones VALOR ?????????
|
Ya puede resolver, VALOR es una propiedad del combobox, otra pregunta, como puedo hacer para que al momento que encuentre un resultado y al darle click o enter se desaparezca la ventanita?????????????????
|
Cita:
VALOR es el nombre del parámetro que se le envia a la consulta SQL. Dentro de la consulta y para que pueda ser reconocido como parametro siempre debe ir precedido de dos puntos ( : ). Por ejemplo si tomando en cuenta el código anterior hicieramos: La consulta que se efectuaría sería: Mostrando aquellos campos que comienzan por PER y por haber usado la función UPPER también per, Per, pER, etc. Saludos. |
Cita:
No entiendo bien... ¿ Donde haces el click y que es lo que deseas que desaparezca ? Saludos. |
Hy
Por ejemplo:
Si escribo la letra "J" me aparecen todos los posibles resultados con la letra "J" como JUAN,JOSE,JULIAN, ahora si selecciono JOSE se pone el nombre en el TComboBox pero sigue apareciendo la lista de los resultados. ¿Como se elimina esa lista al momento de que hayas seleccionado un registro? |
Hola dekorone16.
Cita:
Saludos. |
Hola
Creo que no me eh explicado bien, cuando hace la búsqueda los resultados vienen dentro de un rectángulo, solo quiero que al seleccionar el registro que quiero se elimine o esconda el rectángulo !!
|
Hola.
Si deseas que ademas de eliminarse los items también se repliegue el ComboBox, sería:
Saludos. |
Hola
No logro hacer que se repliegue cuando selecciono el registro que quiero, seguiré intentando, gracias !
|
Hola.
El código que te puse hace lo que solicitaste. Es decir, al salir del ComboBox elimina los items, se repliega y deja en la propiedad Text del combo la seleccion o lo ingresado. Lo que podría no ser el evento que desees considerar para determinar que un ítem a sido seleccionado. Pero basta con ejecutar el código en el evento que prefieras para obtener el comportamiento. Como por ejemplo en OnKeyPreess cuando se presione tecla Intro. Otro punto a tener en cuenta es que usando LIKE pudiera ser que se acepte un valor que tenga una correspondencia parcial con el dato actualmente seleccionado. Si no entiendo mál lo que estas buscando, probá utilizando un TDBLookupComboBox. Saludos. |
Hola
Y el código que tienes en que evento va insertado ??????
|
Cita:
Por ejemplo en el evento OnExit, como en el ejemplo del mensaje #12. Saludos. |
Hola
tengo este codigo en el evento onChange y tambien lo eh probado en el onKeyPress, es el mismo que publicaste al principio solo que no encuentro el error para que al momento de seleccionar el registro que quiero se eliminen los demas items
Código:
with TComboBox(Sender) do |
Hola dekorone16.
Como ya te comente en el mensaje #14: Cita:
Para ejemplificar voy a considerar que el usuario seleccionó un item en cualquiera de estos casos:
Como es llamado desde tres eventos, para evitar redundancia puse el código dentro de un procedimiento, pero como verás es la misma porción de código de que he estado hablando. En cualquier caso, encontrarás el valor seleccionado en la propiedad Text del TComboBox o cadena vacía si ninguno fué seleccionado. Saludos. |
Hola
Muchísimas gracias con ese procedimiento ya quedo, gracias y perdón por la insistencia !!!!
|
La franja horaria es GMT +2. Ahora son las 06:14:06. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi