Deletar uma linha em aberto em branco no bgGrid
Por favor laguem pode me ajudar??
ex: se estou em uma dbgrid e corro por todas as colunas até chegar a ultima, se eperto o enter
ele abre uma nova linha, preciso deletar essa linha se estiver em branco sem produto Lançado toda vez que o foco sair de cima dela
ex:
apertei seta pra cima. o sistema precisa deletar a nova linha em branco e pular pra linha de cima
o mesmo com o click do mouse.
Como posso resolver esse problema???
ex: se estou em uma dbgrid e corro por todas as colunas até chegar a ultima, se eperto o enter
ele abre uma nova linha, preciso deletar essa linha se estiver em branco sem produto Lançado toda vez que o foco sair de cima dela
ex:
apertei seta pra cima. o sistema precisa deletar a nova linha em branco e pular pra linha de cima
o mesmo com o click do mouse.
Como posso resolver esse problema???
Guilherme
Curtidas 0
Respostas
Joel Rodrigues
10/05/2012
Se não me engano, essa linha em branco indica que você está tentando inserir um novo registro, logo, o dataset está em modo de inserção. No evento que você preferir pode fazer o seguinte:
Ou seja, se o dataset estiver em modo de inserção e o campo chave não foi preenchido, cancelar a inserção.
Bom, não testei, veja aí no que dá.
Boa sorte.
if dataset.State = dsEdit then if dataset.FieldByName(´campo_chave´).AsString = ´´ then dataset.Cancel();
Ou seja, se o dataset estiver em modo de inserção e o campo chave não foi preenchido, cancelar a inserção.
Bom, não testei, veja aí no que dá.
Boa sorte.
GOSTEI 0
Wesley Yamazack
10/05/2012
Olá Guilherme,
No DBGrid localize a propriedade Options e marcar como True o dbRowSelect, veja se isso pode ajudar. Obs: Toda a linha irá ficar selecionada, você não poderá acessar mais célula por célula.
Um abraço
No DBGrid localize a propriedade Options e marcar como True o dbRowSelect, veja se isso pode ajudar. Obs: Toda a linha irá ficar selecionada, você não poderá acessar mais célula por célula.
Um abraço
GOSTEI 0