Problema RxDbLookupCombo

Delphi

16/08/2006

E ai Galera é um seguinte No formulario Coloquei um campo RxDbLookupCombo para Ligar a tabela cidade com a Cliente, só que eu estou com um Problema quando eu teclo espaço ele mostra as cidades cadastradas dai eu escolho com as setas ou vou digitando o nome da cidade dai vai aparendo o que eu quero só que na hora que eu Teclo ENTER o valor que eu escolhi não Fica no Campo ele limpa o nome do campo que eu escolhi e passa para outro campo, Então como eu posso fazer para escolher o item desejado no campo e teclar enter para comfirmar minha escolha e passar para o proximo campo :?:

Valeu espero ter me espressado Bem!!
:wink:


Alecsandro Moura

Alecsandro Moura

Curtidas 0

Respostas

Tnaires

Tnaires

16/08/2006

Olá
Isso é estranho... Vc tá usando algum código no OnKeyDown do controle pra passar o foco pro próximo componente?


GOSTEI 0
Alecsandro Moura

Alecsandro Moura

16/08/2006

Estou usando no ONKEYPRESS do Form!

IF Key = #13 Thn
Begin
key:=0;
Perform(WM_NEXTDLGCTL,0,0);

Séra que pode ser esse o meu problema? E se for Tem como Resolvelo?


GOSTEI 0
Tnaires

Tnaires

16/08/2006

Provavelmente é isso... Tente retirar a instrução ´Key := 0´ do código, pois ela tá anulando o efeito da tecla Enter (que se trata, justamente, de selecionar o registro no LookupCombo).


GOSTEI 0
Alecsandro Moura

Alecsandro Moura

16/08/2006

Consegui resolver meu problema da seguinte maneira :

If Key = #13 Then
  Begin
   if not (ActiveControl is TRxDBLookupCombo) Then
    begin
       Key := 0;
       SelectNext(ActiveControl, True, True);
  end;
end;


é isso aí valeu pela ajuda! :wink:


GOSTEI 0
Tnaires

Tnaires

16/08/2006

OK
Seu código só tem um problema: se o usuário teclar enter em um LookupCombo, o foco não passa pro próximo componente.
Minha sugestão pra corrigir esse problema:
if Key = #13 then
begin
  Key := 0;
  if ( ActiveControl is TRxDBLookupCombo ) then
    ( ActiveControl as TRxDBLookupCombo ).CloseUp( True );
  SelectNext( ActiveControl, True, True );
end;

Dessa forma, ele seleciona o valor no LookupCombo (somente se o ActiveControl for um) e passa pro próximo componente.
Blz? Abraços


GOSTEI 0
Alecsandro Moura

Alecsandro Moura

16/08/2006

Valeu cara Realmente tinha este problema! 8)

Muito obrigado pela Ajuda. :wink:


GOSTEI 0
POSTAR