no te hablo porque has hecho que eficsa ya no me ayude con mi problema de combobox jaja mentira caral.. recien he terminado de probarlo lo que me has enviado bueno al apretar enter ya me funciona
pero claro lo queria con las teclas abajo y arriba osea desplazarme y tome aun el codigo anterior del hilo de autocompletar el edit del cual tambien participaste
este es el codigo
Código Delphi
[-]
procedure TAltasForm.CiudadEditKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = VK_DOWN then
begin
QueryDataModule.CiudadZQuery.Next;
idciu:=QueryDataModule.CiudadZQuery.FieldByName('Ciudad').Text;
end;
if Key = VK_UP then
begin
QueryDataModule.CiudadZQuery.Prior;
idciu:=QueryDataModule.CiudadZQuery.FieldByName('Ciudad').Text;
end;
end;
bueno me funciona bien al bajar las felchas o subirla por el grid recorriendo los datos al apretar enter tambien sale en el edit
pero el error esta en que si por ejemplo el codigo es 30528 el que elijo este no me muestra en el edit dicho numero si no otro.. como si el cursor estuviera realmente posicionado en la tabla en otro lugar
quizas ese codigo no funcione bien no se que toy haciendo mal
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;
end;
procedure TfrmVentas.txtCodigoKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
If Key = VK_Return Then
begin
txtcodigo.Text:= (''+idciu+'');
BuscaArticulo;
codebusqgrid.Visible:=False;
end;
end;
ahi esta mi codigo completo por si me quieren ayudar
gracias