Ver Mensaje Individual
  #1  
Antiguo 17-05-2011
Rofocale Rofocale is offline
Miembro
 
Registrado: mar 2010
Posts: 182
Reputación: 15
Rofocale Va por buen camino
edit autocompletado mediante grid no funciona

Hola estuve viendo un codigo de autocompletar un edit mediante un grid que se despliega lo saque de este mismo foro
bueno el grid se despliega y me muestra los codigos perfectamente al igual que tambien me permite con las teclas subir y bajar mediante el grid

ahora lo que no funciona es que cuando estoy en el grid en un codigo especifico y le doy enter este no se copia al edit
a ver si me ayudan gracias
Código Delphi [-]
procedure TfrmVentas.txtCodigoKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin

             if Key = VK_DOWN then
                begin
                   dmDatos.cdsCodeArt.Next;
                   idciu:=dmDatos.cdsCodeArt.FieldByName('codigo').value;
                end;

             if Key = VK_UP then
                begin
                   dmDatos.cdsCodeArt.Prior;
                   idciu:=dmDatos.cdsCodeArt.FieldByName('codigo').value;
                end;
end;

procedure TfrmVentas.txtCodigoKeyPress(Sender: TObject; var Key: Char);
begin
 
        if not (Key in ['0'..'9',#8]) then
            Key := #0;

             codebusqgrid.Visible:=True;
             
             dmDatos.cdsCodeArt.Active := false;
             with dmDatos.qryCodeArt do
                 begin
                 close;
                 SQL.Clear;
   
                 Sql.Add('Select * from codigos where codigo like '''+ txtcodigo.Text +'%''');
                           Open;
                end;
                with dmDatos.cdsCodeArt do
                 begin
                 Active := true;
                 FieldByName('codigo').DisplayWidth := 320;
                 dmDatos.cdsCodeArt.FieldByName('codigo').DisplayLabel := 'Código';
                     end;

             if dmDatos.qryCodeArt.IsEmpty then
               begin
                ShowMessage('No hay Resultados');
                codebusqgrid.Visible:=False;
        
                txtcodigo.Clear;
               end;




               If Key = #13 Then
               begin
                  txtcodigo.Text:= (''+idciu+'');
               
                  BuscaArticulo;
                  codebusqgrid.Visible:=False;
               end;
end;
Responder Con Cita