qual coluna da dbgrid?
ola pessoal, tudo bem?
estou com o seguinte problema: tenho um formulario de cadastro com dbedits (codigo, nome, telefone) ligados a uma tabela e um dbgrid com os mesmos campos utilizados pelos dbedits.
minha duvida: como faço para que quando eu clicar em uma celula do dbgrid, não importando o registro, eu saiba qual coluna (campo) eu cliquei, para que o respectivo dbedit (que mostra o mesmo campo da tabela) receba o foco e entre em modo de edição (ex.: eu cliquei na coluna nome e o dbedit ligado ao campo nome recebe o foco e a tabela entra em modo de edição).
vejam meu codigo:
estou indo pelo caminho certo? agradeço pela ajuda.
flaviosan :P
estou com o seguinte problema: tenho um formulario de cadastro com dbedits (codigo, nome, telefone) ligados a uma tabela e um dbgrid com os mesmos campos utilizados pelos dbedits.
minha duvida: como faço para que quando eu clicar em uma celula do dbgrid, não importando o registro, eu saiba qual coluna (campo) eu cliquei, para que o respectivo dbedit (que mostra o mesmo campo da tabela) receba o foco e entre em modo de edição (ex.: eu cliquei na coluna nome e o dbedit ligado ao campo nome recebe o foco e a tabela entra em modo de edição).
vejam meu codigo:
procedure TFRMCLIENTES.DBGrid1CellClick(Column: TColumn); begin case DBGrid1.Columns of //É AQUI QUE MORA MINHA DUVIDA 0 : DBEDIT1.SETFOCUS ; 1 : DBEDIT2.SETFOCUS; 2 : DBEDIT3.SETFOCUS; end; TABELA.EDIT; end;
estou indo pelo caminho certo? agradeço pela ajuda.
flaviosan :P
Flaviosan
Curtidas 0
Respostas
Lucas Silva
23/03/2004
estou indo pelo caminho certo? agradeço pela ajuda.
é isso mesmo, tá dando algum problema?
GOSTEI 0
Flaviosan
23/03/2004
esta dando um erro ´ordinal type required´ na seguinte linha:
será que estou usando a propriedade certa? agradeço pela atenção.
flaviosan :P
case DBGrid1.Columns of
será que estou usando a propriedade certa? agradeço pela atenção.
flaviosan :P
GOSTEI 0
Lucas Silva
23/03/2004
pra fazer um case tem que ser integer mesmo, tinha me esquecido.
Vou ver se acho algum exemplo aqui pra você
Vou ver se acho algum exemplo aqui pra você
GOSTEI 0
Flaviosan
23/03/2004
valeu.
flaviosan :P
flaviosan :P
GOSTEI 0
Fabio.hc
23/03/2004
Tente assim:
procedure TFRMCLIENTES.DBGrid1CellClick(Column: TColumn); begin case Column.Index of //É AQUI QUE MORA MINHA DUVIDA 0 : DBEDIT1.SETFOCUS ; 1 : DBEDIT2.SETFOCUS; 2 : DBEDIT3.SETFOCUS; end; TABELA.EDIT; end;
GOSTEI 0
Lucas Silva
23/03/2004
Fábio,
Eu tentei isso, mais o index sempre me retorna 0.
Não sei pq.
Eu tentei isso, mais o index sempre me retorna 0.
Não sei pq.
GOSTEI 0
Fabio.hc
23/03/2004
Retorna 0 quando clica na primeira coluna,
1 quando clica na a segunda coluna ...
1 quando clica na a segunda coluna ...
GOSTEI 0
Flaviosan
23/03/2004
Fabio, olha só que coicidencia, fiquei mexendo no help do delphi e descobri que o evento OnCellClick da dbgrid retorna qual coluna foi clicada, atraves da variavel Column.Index e com isso eu resolvi o problema. quando entrei no forum para dizer que eu tinha resolvido me deparei com a sua resposta, igualzinha a minha solução!
mesmo assim muito obrigado Fabio e Lucas pela atenção.
flaviosan :P
mesmo assim muito obrigado Fabio e Lucas pela atenção.
flaviosan :P
GOSTEI 0