Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Buscador con sugerencia, similar a google (https://www.clubdelphi.com/foros/showthread.php?t=84202)

Caroso 20-09-2013 19:57:51

Buscador con sugerencia, similar a google
 
hola muchachos alguno sabria decirme que componentes utilizar para realizar un buscador, que al comenzar a escribir comienza a sugerirme nombres... similar a google o youtube... algo como cuando se presiona la combinacion Ctrl+barra espaciadora en delphi... sale el cuadro de ayuda en la cual uno moviendose con las flechas (arriba y abajo) navega en el cuadro y moviendo la de los costados se mueve en el codigo sin perder la seleccion en el cuadro de ayuda...

Si no quedo claro sepan disulpamerme e informarme que con gusto se los explicare nuevamente... muchisimas gracias

Saludos... Atte Caroso :)

Edito:\ Olvide comentar en que lo implementaria... quiero desarrollar un buscador de nodos en un treeview... eso ya lo tengo lo que necesitaria es lo otro... que al escribir en un EDIT (por ejemplo)... me habra el cuadro de sugerencias...

isaiaseml 21-09-2013 00:49:11

yo lo que hago es en el evento Onchange del incrementalsearch
programo lo siguiente

Código Delphi [-]




var txt, sfind: string;
     len: integer;

  begin
     if edFromCode = true then
        begin
                edFromCode := false;

                 exit;

        end;
       txt:= busca.Text;
       if Length(txt)=0 then
       exit;

     sqlmiqry();


        sfind:=miqry.FieldByName (''+campo+'').AsString;

        len := Length(sfind) - Length(txt);
          if len > 0 then begin

         edFromCode:=true;
   busca.Text:=sfind;
   busca.SelStart:=Length(txt);
   busca.SelLength:=len;

   end;

end;


y en el evento Onkeydown del mismo componente pongo esto

Código Delphi [-]


begin
         if (Key=VK_DELETE) or (Key=VK_BACK) then begin
   if Length(busca.Text)>0 then
   begin
     edFromCode := true;

   end
   else if Length(busca.Text)=0 then
   begin

        sqlmiqry();
     edFromCode := true;
 //     exit;
   end;
 end;
end;


con eso logro que me regrese conforme voy tecleando el evento que mas se le paresca a la consulta que hago a mi qry

la variable edfromcode declarala de tipo booleano ... espero me haya dado a entender.

nlsgarcia 21-09-2013 01:52:12

Caroso,

Cita:

Empezado por Caroso
...que al escribir en un EDIT (por ejemplo)...me habra el cuadro de sugerencias...

Revisa los Msgs #5 y #18 del link:
Espero sea útil :)

Nelson.


La franja horaria es GMT +2. Ahora son las 01:51:12.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi