Ver Mensaje Individual
  #1  
Antiguo 29-06-2007
Avatar de david_uh
david_uh david_uh is offline
Miembro
 
Registrado: may 2007
Ubicación: Arequipa, Perú
Posts: 227
Reputación: 18
david_uh Va por buen camino
Question Autocompletado en un Edit

estoy haciendo que mientras escribo en un edit en la lista se muestre el elemento que coincida con lo escrito en el edit, ejem:
http://www.geocities.com/david_uh/problema/lista.JPG
el codigo de busqueda es esta funcion que da -1 si no encuentra lo que busca asi de esta manera la lista se deselecciona

Código Delphi [-]
function buscar (Var lista: TListBox ; cad: String; i,s: Integer): Integer;
var a: Integer;
begin
    a := LENGTH(cad);
    if CompareText(copy(lista.Items[i],1,a),cad) = 0 then
        Result := i
    else
    if CompareText(copy(lista.Items[s],1,a),cad) = 0 then
        Result := s
        else
            if (i=s) or (i=s-1) then
                Result := -1
            else
                if CompareText(copy(lista.Items[(i+s) div 2],1,a),cad)>0  then
                    Result := buscar(lista,cad,i,(i+s) div 2)
                else
                    Result := buscar(lista,cad,(i+s) div 2,s);

end;

pero la hacer la busquda encuentra la primera palabra ejem
Jose
y me aparacen todos lo que su nombre empieza con jose bien hasta ahi
pero en la lista existe digamos jose amanqui al dijitar la 'a' ya no encuentra nada

Estare agradecido por cualquier aporte
Responder Con Cita