Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-11-2012
Avatar de DarkBlue
DarkBlue DarkBlue is offline
Miembro
 
Registrado: jun 2010
Posts: 105
Poder: 14
DarkBlue Va por buen camino
Combobox como edit de google

hola compañeros la verdad es que quiero hacer algo muy parecido a lo que google tiene en su caja de busqueda escribo una letra y se muestran abajo los resultados posibles relacionados;los mios los obtengo de una base de datos.

Bueno hasta ahora el unico problema que tengo es que cuando encuentro un resultado parecido digamos Ma en la caja de texto del combo(donde escribo ) me pone Maria Concepción ( osea el primer resultado) pero yo no quiero que me ponga en automatico el primer resultado.

Ademas una ves hecho esto de completar con algun registro la proxima tecla que presiono se va al inicio del texto digamos asi
Maria Concepcion (aparte que solo pone en azul el resto de la palabra) la próxima tecla seria E en el combobox edit aparece EMariaConcepcion.



el estilo de mi combobox1 es csDropDown

este es el código que utilizo


Código Delphi [-]

procedure Tform1.ComboBox1KeyPress(Sender: TObject; var Key: Char);
begin

if length(combobox1.Text)>1 then begin

busca(combobox1.Text);

end ;



form1

procedure busca(cadena:String);
var combo:string;
begin



m.piezascot.SQL.Clear;
m.piezascot.SQL.Add('select * from seleccionapiezasarea where n like '+quotedstr(cadena+'%%')+' and c <> all (select id_final_piezaspresupuestos from partes_pedido where cve_servicio='+
form1.claveservicio+') order by n asc');
m.piezascot.Open;


form1.clavespiezas.Clear;
form1.combobox1.Items.Clear;
form1.cclaveservicio.Clear;


while not m.piezascot.Eof do
begin
   if form1.ComboBox1.Items.IndexOf(m.piezascot.fieldbyname('n').AsString)=-1 then form1.ComboBox1.Items.Add(trim(m.piezascot.fieldbyname('n').AsString));
   if form1.clavespiezas.Items.IndexOf(m.piezascot.fieldbyname('c').AsString)=-1 then  form1.clavespiezas.Items.Add(m.piezascot.fieldbyname('c').AsString);
   if form1.cclaveservicio.Items.IndexOf(m.piezascot.fieldbyname('servicio').AsString)=-1 then form1.cclaveservicio.Items.Add(m.piezascot.fieldbyname('servicio').AsString);
  m.piezascot.Next;
end;

end;

Muchas gracias por su tiempo espero haber explicado bien y animo!
__________________
Todo es Relativo

Última edición por Casimiro Notevi fecha: 15-11-2012 a las 18:19:09.
Responder Con Cita
  #2  
Antiguo 15-11-2012
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Poder: 20
movorack Va camino a la famamovorack Va camino a la fama
Leyendo lo que expones. Me hago una pregunta, ¿Haz analizado el costo que tiene hacer una consulta por cada pulsación de teclado?.

Con respecto a lo que comentas, lo que está sucediendo es que estás actualizando el texto del componente y el te coloca al inicio del mismo. Podrías mirar algún método para colocarte al final del texto digitado para continuar con la escritura.

Buscando en google, podrás hallar algunas porciones de códigos que te ayuden con lo que necesitas.
__________________
Buena caza y buen remar... http://mivaler.blogspot.com
Responder Con Cita
  #3  
Antiguo 05-12-2012
Avatar de DarkBlue
DarkBlue DarkBlue is offline
Miembro
 
Registrado: jun 2010
Posts: 105
Poder: 14
DarkBlue Va por buen camino
gracias

si asi es buscando en google encontre un enlace de embarcadero indicando como se puede hacer, pues como son poquitas las personas que usaran creo que no hay problema haciendo consultas a la ves aun no se como medir el rendimiento de las aplicaciones gracias amigo =)
__________________
Todo es Relativo
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Manejar ComboBox desde un Edit Enan0 Varios 2 25-08-2011 16:54:14
convertir con edit y combobox arespremium OOP 3 26-08-2007 02:15:47
Google demanda a Microsoft por las interferencias que Vista genera en Google Desktop Casimiro Notevi Noticias 4 12-06-2007 19:53:42
como mostrar la ventana de lenar inten de un combobox en tiempo de un combobox gulder Varios 3 19-05-2007 20:55:58
Google Phone será el nuevo teléfono de Google jhonny La Taberna 2 17-03-2007 22:51:04


La franja horaria es GMT +2. Ahora son las 13:48:32.


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
Copyright 1996-2007 Club Delphi