Fórum Dbgrid #290972
06/08/2005
0
Tenho um Dbgrid em uma aplicação cuja finalidade é de consulta e caso precise ele permite editar somente um campo. Portanto, se eu estiver na última linha e apertar a seta para baixo ele abre uma linha. Eu gostaria de saber se existe algum bloqueio para que não abrir linhas no Dbgrid.
Muito obrigado.
Ricardo
Ricardo_ascii
Curtir tópico
+ 0Posts
06/08/2005
Marco Salles
var Inserir:Boolean=False;
procedure TForm1.DBGrid1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin case Key of Vk_Down, Vk_Tab :inserir:=true; end; end;
procedure TForm1.Query1NewRecord(DataSet: TDataSet); begin if inserir Then query1.Cancel; Inserir:=False; end;
Gostei + 0
07/08/2005
Hellsing
> Escolha o componente que está conectado à tabela (ClientDataset, Table, IBXTable, Query, o que quer que seja).
> Na guia ´Events´ do Object Inspector, escolha ´BeforeInsert´:
> Digite o código:
procedure TDataModule.Table1BeforeInsert(Dataset: TDataset); begin ABORT; end;
Falowz...
[b:cd87cfe1ec]Hellsing[/b:cd87cfe1ec]
Gostei + 0
07/08/2005
Marco Salles
[b:40b40c9ff6]mas isto irá impedir toda e qualquer inserção .....[/b:40b40c9ff6]
e o caso dele é específico
[b:40b40c9ff6]se eu estiver na última linha e apertar a seta para baixo ...
bloqueio para que não abrir linhas no Dbgrid.[/b:40b40c9ff6]
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)