Fórum Pegar o valor do campo da célula do dbgrid #442790
13/05/2013
0
Estou com uma dúvida. Tenho no DBGrid as colunas, exemplo Action, Action_Nome, Permissao. Não é query é uma tabela.
Gostaria de pegar no click do mouse o valor da Coluna Action_Nome e Action e guardar numa variável, uma pra cada.
Frederico Brigatte***
Curtir tópico
+ 0Posts
13/05/2013
Frederico Brigatte***
Acao := DBGrid2.Columns.Items[0].Field.AsString;
Acao_Nome := DBGrid2.Columns.Items[1].Field.AsString;
Gostei + 0
14/05/2013
Joel Rodrigues
acao := tabela.FieldByName('Action').AsString;
Gostei + 0
14/05/2013
Frederico Brigatte***
Gostei + 0
14/05/2013
Landerson Santos
A opção levantada pelo Frederico é mais rápida, uma vez que você quando utiliza o opção FieldByName, ela na verdade vai fazer a busca pelos indices dos Items até achar o "Nome" procurado para depois fazer a atribuição, enfim, você tem um passo a mais.
Gostei + 0
14/05/2013
Joel Rodrigues
Porém, do ponto de vista da manutenção, é mais fácil identificar qual campo está sendo acessado. Mesmo em tempo de desenvolvimento, é mais fácil acessar um campo pelo nome, que procurar seu índice no DBGrid para acessar pela posição da coluna.
Além disso, para o Frederico que é iniciante, ele pode precisar acessar o campo de uma tabela em outro lugar, onde não tenha um grid, aí fica bem mais fácil acessar diretamente pela tabela.
Um abraço a todos.
Gostei + 0
14/05/2013
Frederico Brigatte***
Gostei + 0
14/05/2013
Joel Rodrigues
Estou marcando o tópico como CONCLUÍDO.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)