tengo un problema:
en el este evento veo si se lleno la casilla con dos digitos, y con la función hago que me salta a ala casilla de abajo en la grid. pero el valor del campo NO me captura el último digito ingresado. Ej.: 45 ingrado, salta a a la próxima celda y se guarda solo el 4. Que tendría que hacer?.
procedure TFIngresoNotas.ExDBGrid2KeyPress(Sender: TObject; var Key: Char);
begin
if (Key in ['0','2','1','3','4','5','6','7','8','9']) or (Key = #13)then
begin
inc(ndigitos);
Key := Key;
if ndigitos = 2 then
begin
ExDbgrid2.Perform(wm_KeyDown,vk_Down,0);
ndigitos:=0;
end;
end
else
begin
Aviso('Deben ser solo números',mb_IconInformation);
Key := ' ';
end;
end;
__________________
Manuel Muñoz L. Trabajando con delphi 7.0 , migrando sistema a Delphi XE8, matando BDE y pasando FIREDAC.
|