Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Go Back   Foros Club Delphi > Principal > Varios
Register FAQ Members List Calendar Guía de estilo Today's Posts

Coloboración Paypal con ClubDelphi

 
 
Thread Tools Search this Thread Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 04/10/2004
Walterdf Walterdf is offline
Miembro
 
Join Date: May 2003
Location: Buenos Aires
Posts: 152
Poder: 24
Walterdf Va por buen camino
Autocompletar un TEdit (solución, no consulta)

Buenas
Alguna vez he necesitado autocompletar un TEdit en base al texto de una tabla y la recomendación fue usar otro componente como dblookupcombobox, lo cual me vino bárbaro. Pero, en estos días realicé una aplicación en el cual logré hacer un tedit que se autocompleta y quería poner un ejemplo a disposición del foro por si les interesa. Aclaro que no soy programador experto, este código es simple y totalmente mejorable.

Componentes a usar:
-un TQuery apuntando a la base de datos
-un TEdit (en el cual se realizará la búsqueda)

Procedimiento:-
En el evento OnChange del TEdit (Filtra la consulta con el texto que se escriba en el edit)

Código Delphi [-]
procedure TForm1.Edit1Change(Sender: TObject);
begin
  with query1 do
      begin
        Close;
        with sql do
          begin
            clear;
            add('Select * from base.db where campo like ' + quotedstr(edit1.Text + '%')+ 'order by campo');
          end;
        Open;
      end;
end;

En el evento OnKeyUp del Edit:

Código Delphi [-]
procedure TForm1.Edit1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
  texto , campo : string;
begin
  texto:=edit1.text;
  contador:=contador+1;
  campo:=query1.FieldByName('campo').AsString;
  Delete(campo,1,contador);
  edit1.Text:=texto + campo;
  edit1.SelStart:=contador;
  edit1.SelLength:=30 //tamaño del campo
end;

La variable "contador" la ponemos como public

En el evento OnCreate del form:

Código Delphi [-]
contador:=0;

Yo he puesto algunos eventos de teclado para evitar ciertas teclas (tab, enter, etc.) , pero eso ya va a gusto del consumidor, como dije antes, es totalemente mejorable. (Lo hice en Delphi 4 con una base de datos Paradox).
Un abrazo y espero le sirva a alguien.

Walter

Last edited by Walterdf : 04/10/2004 at 22:12. Reason: Equivoqué la posición de una etiqueta
Reply With Quote
 



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT +2. The time now is 21:10.


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