Fórum DBGrid com multiselect #352513
25/01/2008
0
Num DBGrid com multiselect eu gostaria que, à medida que eu fosse selecionando os registros, os valores de uma coluna fossem sendo somados.
Seria algo como um evento que acontece quando seleciono um registro, mas acho que não há este evento. Há o oncellclick, mas não funciona da maneira que pretendo.
Se alguém puder me ajudar ficarei muito grato.
Obrigado.
Bicho_feio
Curtir tópico
+ 0Posts
26/01/2008
Marcosrocha
Gostei + 0
26/01/2008
Edilcimar
With DBGrid1.DataSource.DataSet do
Begin
For I := 0 to DBGrid1.SelectedRows.Count - 1 do
Begin
GotoBookMark(Pointer(DBGrid1.SelectedRows.Items[I]));
aqui faça os comandos que quiser (isto pode ser colocado por exemplo no onclick do dbgrid)
End
End;
Agora é só montar os cálculos
Gostei + 0
26/01/2008
Bicho_feio
Edilcimar, o seu código realmente funciona. O problema (sempre há um, não é?) é que não uso o DBGrid comum.
Eu uso um componente chamado SMDBGrid. Este componente permite colocar no Indicator um checkbox para selecionar múltiplos registros (o usuário aqui prefere marcar os checkbox do que segurar control).
Neste componente, se eu seguro control e vou marcando as linhas o seu código funciona beleza, mas se eu marcar os checkbox, ele seleciona os registros mas não dispara o oncellclick.
Se alguém conhecer este componente e puder me dar uma luz agradeço imensamente,
Enquanto isso, obrigado a todos pela disposição em ajudar.
Gostei + 0
30/01/2008
Farnetani
Valew!
Gostei + 0
30/01/2008
Farnetani
o q vc quer é super simples
basta rodar o dataset e ir checando a
propriedade:Selectedrows.currentrowselected
if dbgprin.SelectedRows.CurrentRowSelected then
ai vc soma...etc...
Gostei + 0
30/01/2008
Darkrme
mas vc pode usar o evento OnDataChange do DataSource q esta linkado ao ´DBGrid´...
isso se qnd o usuario selecionar um checkbox do ´DBGrid´, o datasource mudar de registro tb... se ele mudar acho q o evento OnDataChange do DS eh o mais apropriado...
Espero ajudar =)
Gostei + 0
05/02/2008
Bicho_feio
Eu estava usando uma versão antiga do componente e, nesta versão, realmente não tinha o evento que eu precisava.
Foi só baixar a nova versão e, beleza, deu tudo certo.
Eu particularmente acho este componente bem prático. Ele tem diversas funcionalidades, é free, vem com código fonte e demo. Quem quiser experimentar pode baixar neste endereço: http://www.scalabium.com/smdbgrid.htm
No mais, agradeço a atenção e a paciência de todos,
Felicidades.
Gostei + 0
02/05/2019
Jonas
Eu estava usando uma versão antiga do componente e, nesta versão, realmente não tinha o evento que eu precisava.
Foi só baixar a nova versão e, beleza, deu tudo certo.
Eu particularmente acho este componente bem prático. Ele tem diversas funcionalidades, é free, vem com código fonte e demo. Quem quiser experimentar pode baixar neste endereço: http://www.scalabium.com/smdbgrid.htm
No mais, agradeço a atenção e a paciência de todos,
Felicidades.
Amigo nao consegui instalar os componentes e nao achei nada no site que explique como instalar,
Abro o Package e depois clico em instalar e aparece 68 erros na compilação
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)