Hola Daniel10.
Si te decidis por usar un ADOQuery te pongo un ejemplo de búsqueda incremental con ese componente. Al igual que comenta
Neftali, aprovecha el evento
OnChange de un Edit para lanzar la nueva consulta.
Código Delphi
[-]
procedure TForm1.Edit1Change(Sender: TObject);
var
cpo: string;
begin
if RadioGroup1.ItemIndex > -1 then
with ADOQuery1 do
begin
Close;
case RadioGroup1.ItemIndex of
0: cpo:= 'APELLIDO';
1: cpo:= 'NOMBRE';
2: cpo:= 'CIUDAD';
end;
SQL.Text:= 'SELECT * FROM TU_TABLA WHERE ' + cpo + ' LIKE :PVALOR';
Parameters.ParamByName('PVALOR').Value:= Edit1.Text + '%';
Open;
end
end;
También tomá en cuenta lo mencionado en cuanto a la ineficiencia de esta forma de filtrado.
Saludos.