Página 1 de 1

TSBROWSE - Selecionar linha com ENTER

Enviado: 25 Jun 2015 17:51
por abarbosa
Olá Pessoal,
Acompanho o fórum desde o clipper e só agora estou enviando a primeira mensagem. Estou no processo de migração / adaptação com a Minigui.
Não encontrei no fórum e nos exemplos uma maneira de habilitar o ENTER para selecionar uma linha do TSBROWSE, é possível? Como fazer?
Pensei no ON KEY mas achei que estaria fazendo coisa desnecessária, que deve existir coisa mais prática.
Na cláusula On DblClick eu utilizo conforme abaixo:
...
On DblClick (fRetornaValor(cCampoRet,cTelaGetRet,cEdtGetRet),fFechaPesquisa(),frmPesquisaGenerica.Release)
...
Gostaria de fazer o mesmo ao se pressionar a tecla ENTER em uma linha do TSBROWSE.
Obrigado,

André

TSBROWSE - Selecionar linha com ENTER

Enviado: 26 Jun 2015 09:19
por Toledo
Amigo, tente o seguinte:

- no seu código antes do END TBROWSE, incluir:

Código: Selecionar todos

oBrw1:bKeyDown := {|nKey| If(nKey==13, SuaRotina(),Nil) }
Atenção: oBrw1 corresponde ao nome do objeto do TBrowse.

- ai no final do arquivo incluir a SuaRotina():

Código: Selecionar todos

Proc SuaRotina()
fRetornaValor(cCampoRet,cTelaGetRet,cEdtGetRet)
fFechaPesquisa()
frmPesquisaGenerica.Release
Return
Não testei, mas acho que vai dar certo.

Abraços,

TSBROWSE - Selecionar linha com ENTER

Enviado: 26 Jun 2015 12:37
por abarbosa
Todelo,

Funcionou o seu código, aproveitei para testar de uma maneira diferente e também funcionou:

oBrwPesquisa:bKeyDown := {|nKey| If(nKey==13, (fRetornaValor(cCampoRet,cTelaGetRet,cEdtGetRet),fFechaPesquisa(),frmPesquisaGenerica.Release) ,Nil) }

Muito obrigado!

André