bug dbgrid?
coloquei um dbgrid com a propriedade dbediting := false;
e um botao com o caption &Alterar === alt + a ... ativa o botao
mas se o foto tiver no dbgrid e precionar apenas a ele executao o botao pq? sem tem segurado alt?
e um botao com o caption &Alterar === alt + a ... ativa o botao
mas se o foto tiver no dbgrid e precionar apenas a ele executao o botao pq? sem tem segurado alt?
Guibas
Curtidas 0
Respostas
Paulo
29/05/2008
Não entendi nada do que vc escreveu. Seja mais explicito, valeu!!!!
GOSTEI 0
Guibas
29/05/2008
TENHO EM UM FORM UM DBGRID COM OPÇÃO DGEDITING = TRUE E UM TBUTTON COM O CAPTION = &TESTE
ONDE FICA O ATALHO ALT + T
SÓ QUE SE O FOCO ESTÁ NO DBGRID E PRECIONO A TECLA T (SEM APERTAR A TECLA ALT) ELE CHAMA O BOTAO... ONDE DEVERIA SER PRECISO O ALT + T
TEM COMO RESOLVER ISSO PRA QDO O FOCO ESTIVER NO DBGRID SÓ CHAMAR O BOTAO COM ALT + T E NÃO APENAS T COMO ACONTECE EM QUALQUER OUTRO OBJETO DO FORM?
ONDE FICA O ATALHO ALT + T
SÓ QUE SE O FOCO ESTÁ NO DBGRID E PRECIONO A TECLA T (SEM APERTAR A TECLA ALT) ELE CHAMA O BOTAO... ONDE DEVERIA SER PRECISO O ALT + T
TEM COMO RESOLVER ISSO PRA QDO O FOCO ESTIVER NO DBGRID SÓ CHAMAR O BOTAO COM ALT + T E NÃO APENAS T COMO ACONTECE EM QUALQUER OUTRO OBJETO DO FORM?
GOSTEI 0
Steve_narancic
29/05/2008
Isto é um padrão do windows, pode fazer o teste em forms do sistema operacional, colocando o foco em um componente não editavel e pressionando a tecla de atalho de um botão, vc vera que será executado.
tenho a rotina pra tratar isso vou ver e posto aqui pra voces
tenho a rotina pra tratar isso vou ver e posto aqui pra voces
GOSTEI 0
Paulo
29/05/2008
Guibas, acabei de fazer uns testes aqui e comigo não dá esse erro. Coloquei um DBGrid, um botão e fiz os testes e nada. Só funcionava com ALT+B, no meu caso. Veja aí alguns eventos e que estão neles e ve se não é isso. valeu!!!! Qualquer coisa, poste aí.
GOSTEI 0
Steve_narancic
29/05/2008
Guibas, acabei de fazer uns testes aqui e comigo não dá esse erro. Coloquei um DBGrid, um botão e fiz os testes e nada. Só funcionava com ALT+B, no meu caso. Veja aí alguns eventos e que estão neles e ve se não é isso. valeu!!!! Qualquer coisa, poste aí.
Voce alterou a propriedade options da grid, setando dgeditng pra false????
GOSTEI 0
Paulo
29/05/2008
o dele está true
GOSTEI 0
Steve_narancic
29/05/2008
muda pra false, que ira ocorrer o que o colega descreveu
GOSTEI 0
Guibas
29/05/2008
se tiver posta ai a rotina pra tratar isso
vlw cara...
vlw cara...
GOSTEI 0
Steve_narancic
29/05/2008
no evento onShortCut do Form:
//Desconsiderar os atalhos dos botões [&] quando estiver em um componente não digitavel if (Screen.ActiveControl is TRadioButton) or (Screen.ActiveControl is TCustomCheckBox) or ((Screen.ActiveControl is TDBGrid) and (not(dgEditing in TDBGrid(Screen.ActiveControl).Options))) then begin if not ((Msg.CharCode = VK_Space) or (Msg.CharCode = VK_Return) or (Msg.CharCode = VK_Tab ) or (Msg.CharCode = VK_F1) or (Msg.CharCode = VK_F2) or (Msg.CharCode = VK_F3) or (Msg.CharCode = VK_F4) or (Msg.CharCode = VK_F5) or (Msg.CharCode = VK_F6) or (Msg.CharCode = VK_F7) or (Msg.CharCode = VK_F8) or (Msg.CharCode = VK_F9) or (Msg.CharCode = VK_F10) or (Msg.CharCode = VK_F11) or (Msg.CharCode = VK_F12) or (Msg.CharCode = VK_Down) or (Msg.CharCode = VK_UP) or (Msg.CharCode = VK_Left) or (Msg.CharCode = VK_Right) or (Msg.CharCode = VK_PRIOR) or (Msg.CharCode = VK_NEXT)) then Abort; end
GOSTEI 0