Ver Mensaje Individual
  #4  
Antiguo 04-10-2012
Avatar de ElDioni
[ElDioni] ElDioni is offline
Miembro Premium
 
Registrado: jul 2005
Ubicación: Murcia (España)
Posts: 935
Reputación: 19
ElDioni Va por buen camino
Hola,

este código lo saqué en su día del club, sirve para que mientras vas escribiendo en un Edit te va autocompletando lo que te queda por escribir con la primera coincidencia que encuentra en la bbdd. Te lo pongo por si te sirve de algo.

Código Delphi [-]
if key=8 then
  begin
    if contador>0 then
      begin
        contador:=txtbusprov.SelLength+1;
        contador:=length(txtbusprov.text)-contador;
      end;
  end
else
  begin
    contador:=length(txtbusprov.text)-txtbusprov.sellength;
  end;
adoquery2.Close;
adoquery2.SQL.Text:='SELECT * FROM proveedores WHERE proveedor LIKE ' + quotedstr(txtbusprov.Text + '%');
adoquery2.Open;
if adoquery2.IsEmpty=false then
  begin
    if txtbusprov.text<>'' then
      begin
        texto:=txtbusprov.text; //Guardamos la letra pulsada
        campo:=adoquery2.FieldByName('proveedor').AsString;//asignamos al string el primer campo que coincide con esa letra
        Delete(campo,1,length(txtbusprov.text)); //contador); se le resta al campo el numero de letras que hemos escrito
        txtbusprov.Text:=texto + campo;//se concatena las letras escritas con lo que falta del campo
        txtbusprov.SelStart:=contador;//
        txtbusprov.SelLength:=50; //tamaño del campo
      end;
  end;

Saludos.
__________________
Confórmate con lo que tienes pero anhela lo que te falta.
Responder Con Cita