Edição de dados num DbGrid

Delphi

11/04/2008

Saudações,
Tenho um form onde há um DbGrid que é prenchido com registro e há um processo em que o usuário deverá digitar uma informação.
Durante testes, percebi que se após digitar um valor, teclar-se uma tecla de movimento (setas) ou Page Up/Down ocorre um erro de estouro de pilha ´stack overflow´ e o sistema ´quebra´.

Pra corrigir este problema, estou usando o seguinte código no evento OnKeyDown do DbGrid:
[i:624a9b2ecf]
if (Sender as TDBGrid).DataSource.DataSet.State in [dsEdit] then
begin
if not (Key in [VK_RETURN, VK_TAB]) then
Key := 0;
end;
[/i:624a9b2ecf]
Pergunto como vocês tratam este problema. Se há uma forma melhor de se fazer isso.


Luciano.badoe

Luciano.badoe

Curtidas 0

Respostas

Steve_narancic

Steve_narancic

11/04/2008

provavelmente vc esta chamando uma rotina que chama a mesma rotina, colocando o sistema em uma espécie de loop infinito.

tipo no afterpost do dataset vc chamar novamente o post deste dataset.


GOSTEI 0
POSTAR