TSBROWSE - Selecionar linha com ENTER

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

abarbosa
Usuário Nível 1
Usuário Nível 1
Mensagens: 8
Registrado em: 25 Jun 2015 17:39
Localização: Brasilia/DF

TSBROWSE - Selecionar linha com ENTER

Mensagem 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é
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

TSBROWSE - Selecionar linha com ENTER

Mensagem 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,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
abarbosa
Usuário Nível 1
Usuário Nível 1
Mensagens: 8
Registrado em: 25 Jun 2015 17:39
Localização: Brasilia/DF

TSBROWSE - Selecionar linha com ENTER

Mensagem 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é
Responder