enter no dbgrid
montei um grid com uma coluna de valores, quero que o usuario tecle enter e todo o valor do campo fique selecionado como no TAB...
coloquei um codigo onde o enter funciona bem, pulando de linha em linha, mas o cursor fica sempre no final do valor, ..., se eu usar o tab, e as setas de direção, os valores ficam selecionados....
fiz uma pesquisa onde por troca de tab pelo enter, mas por enqto não achei nada que resolva meu problema....
coloquei um codigo onde o enter funciona bem, pulando de linha em linha, mas o cursor fica sempre no final do valor, ..., se eu usar o tab, e as setas de direção, os valores ficam selecionados....
fiz uma pesquisa onde por troca de tab pelo enter, mas por enqto não achei nada que resolva meu problema....
Arc
Curtidas 0
Respostas
Nilpedro
16/01/2006
Resposta a essa pergunta ja tá neste forum
http://forum.clubedelphi.net/viewtopic.php?t=71066
http://forum.clubedelphi.net/viewtopic.php?t=71066
GOSTEI 0
Arc
16/01/2006
ok
eu ja tinha visto este topico....
bom, pelo menos aki naum ta funcionando
eu ja tinha visto este topico....
bom, pelo menos aki naum ta funcionando
GOSTEI 0
Arc
16/01/2006
ele até que funciona, mas é aquele negocio, o cursor continua no final do valor, ..., eu quero que ele selecione o valor todo, como se fosse um selectall
GOSTEI 0
Aasn
16/01/2006
Caro arc,
Não entendi direito o que vc quer, mas aí vai um trecho de código que pode ajudar:
se vc puder ser mais específico, talvez possa ajudar mais.
[]´s
AASN
Não entendi direito o que vc quer, mas aí vai um trecho de código que pode ajudar:
with DBGrid1 do begin if selectedindex < (fieldcount - 1) then selectedindex := selectedindex + 1 else selectedindex := 0; end;
se vc puder ser mais específico, talvez possa ajudar mais.
[]´s
AASN
GOSTEI 0
Arc
16/01/2006
Caro AASN
quando eu teclo TAB, o valor da celula, fica todo selecionado, ou seja, se o valor for 125,00, o valor 125,00 fica selecionado(em azul);
se eu teclo as setas Right, Left, Down, Up, o valor fica selecionado, da mesma forma que com a tela TAB
qdo eu teclo ENTER, o cursor vai para o final da celula, no mesmo exemplo, o cursor fica logo após o ultimo zero de 125,00, o que obriga o usuario a usar o mouse para selecionar o valor e edita-lo
espero ter conseguido explicar melhor
abraço
quando eu teclo TAB, o valor da celula, fica todo selecionado, ou seja, se o valor for 125,00, o valor 125,00 fica selecionado(em azul);
se eu teclo as setas Right, Left, Down, Up, o valor fica selecionado, da mesma forma que com a tela TAB
qdo eu teclo ENTER, o cursor vai para o final da celula, no mesmo exemplo, o cursor fica logo após o ultimo zero de 125,00, o que obriga o usuario a usar o mouse para selecionar o valor e edita-lo
espero ter conseguido explicar melhor
abraço
GOSTEI 0
Aasn
16/01/2006
Caro arc,
fiz este pequeno teste e funcionou exatamente como vc quer. Não sei os detalhes do seu projeto mas fiz esta rotina sem me preocupar com os detalhes e funcionu perfeitamente.
[]´s
AASN
procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char); begin if key = #13 then begin Key := 0; with DBGrid1 do begin if selectedindex = 1 { coluna valor } then Key := 13 else { outra coluna qualquer } if selectedindex < (fieldcount - 1) then selectedindex := selectedindex + 1 else selectedindex := 0; end; end; end;
fiz este pequeno teste e funcionou exatamente como vc quer. Não sei os detalhes do seu projeto mas fiz esta rotina sem me preocupar com os detalhes e funcionu perfeitamente.
[]´s
AASN
GOSTEI 0
Arc
16/01/2006
colegas
achei o erro aki, puts, nem acredito que era isso
a opção alwaysshoweditor do grid estava como true, coloquei false e funcionou
valeu
achei o erro aki, puts, nem acredito que era isso
a opção alwaysshoweditor do grid estava como true, coloquei false e funcionou
valeu
GOSTEI 0