Fórum [Delphi] Seleção Múltipla através de um CheckBox #579414
27/03/2017
0
Boa tarde! Recentemente estou criando um projeto em que utilizo um TDBAdvGrid, onde tem uma coluna em que o usuário pode checar uma ou várias linhas como na imagem abaixo.
Imagem do Grid
Eu queria saber se alguém tem uma noção de como fazer através de outra check box como na imagem, ela seja marcado checkando todos os campos do grid. Já testei várias propriedades do DBAdvGrid, e com nenhuma eu obtive sucesso para marcar todas.
Se alguém já passou por isso e conhece uma solução, poderia me ajudar?
Obrigado, aguardo respostas.
Imagem do Grid
Eu queria saber se alguém tem uma noção de como fazer através de outra check box como na imagem, ela seja marcado checkando todos os campos do grid. Já testei várias propriedades do DBAdvGrid, e com nenhuma eu obtive sucesso para marcar todas.
Se alguém já passou por isso e conhece uma solução, poderia me ajudar?
Obrigado, aguardo respostas.
Gxf
Curtir tópico
+ 0
Responder
Post mais votado
28/03/2017
Bom dia! Essa alteração deve ser feita no seu ClientDataSet ou Query, onde esta coluna está ligada.
Faça um isso:
Com isso, todos os seus registros serão selecionados. Abraços
Faça um isso:
ClientDataSet.First;
While not ClientDataSet.Eof do
begin
ClientDataSet.FieldByName('Seu_Campo_CheckBox').Value:= 'S';
ClientDataSet.Next;
end;
Com isso, todos os seus registros serão selecionados. Abraços
Mateus Ribeiro
Responder
Gostei + 5
Mais Posts
27/03/2017
Nomad
Também estou passando pela mesma situação... Sera que alguem saberia como resolver?
Obrigado
Obrigado
Responder
Gostei + 1
28/03/2017
Gxf
Bom dia! Essa alteração deve ser feita no seu ClientDataSet ou Query, onde esta coluna está ligada.
Faça um isso:
Com isso, todos os seus registros serão selecionados. Abraços
Faça um isso:
ClientDataSet.First;
While not ClientDataSet.Eof do
begin
ClientDataSet.FieldByName('Seu_Campo_CheckBox').Value:= 'S';
ClientDataSet.Next;
end;
Com isso, todos os seus registros serão selecionados. Abraços
Obrigado amigo, o seu jeito funcionou mais precisei de um field da query para dar certo.
Entretanto onde checa no grid é apenas uma coluna comum sem field, e ontem na correria do trabalho deixei escapar uma procedure própria do AdvGrid em que realiza o que eu preciso de maneira simples e sem precisar ter um field na coluna.
Segue o que fiz, caso outra pessoa venha a ter uma dúvida parecida e deixe passar essa procedure:
procedure TfrmLedWeb.chkSelectAllClick(Sender: TObject);
begin
if chkSelectAll.Checked then
grdNotaFiscal.CheckAll(1)
else
grdNotaFiscal.UnCheckAll(1);
end;
Responder
Gostei + 1
Clique aqui para fazer login e interagir na Comunidade :)