Ajuda com GetBox

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

Avatar do usuário
Poka
Usuário Nível 4
Usuário Nível 4
Mensagens: 563
Registrado em: 25 Out 2004 21:26
Localização: Leme/SP

Ajuda com GetBox

Mensagem por Poka »

Olá a todos

Em uma janela de entrada de dados utilizando GETBOX e com o comando ON KEY F2 ACTION funcaoqualquerl()

Quando teclo o F2 e vou para essa funcao, tem como eu saber qual campo estou?

Se alguem puder ajudar, agradeço


Poka
Avatar do usuário
gralak
Usuário Nível 3
Usuário Nível 3
Mensagens: 233
Registrado em: 21 Mar 2007 13:28
Localização: Cianorte/PR

Mensagem por gralak »

Se essa função for somente para este campo valida ela com uma variavel e a utiliza como parametro para a função, para testar se faz ou não, assim só vai ocorrer se vc estiver nesse campo como por ex:

entra:=""
ON KEY F2 ACTION funcaoqualquer(entra)

@ 20,20 textbox tx_campo width 150 height 50;
ON GOTFOCUS(entra:="S");
ON LOSTFOCUS(entra:="")

function funcaoqualquer(entra)
if entra ="S"
{corpo da função}
endif
return



blzinha ... Espero ter ajudado!!!! té++++ :))
Avatar do usuário
Luciano Bonfim
Usuário Nível 3
Usuário Nível 3
Mensagens: 414
Registrado em: 23 Ago 2007 09:34
Localização: Rio de Janeiro / São Paulo
Contato:

Mensagem por Luciano Bonfim »

no clipper eu faço isso usando a funçäo readvar() que retorna o nome da variável que está sendo editada no GET, com certeza deve ter algo ter algo semelhante na GETBOX.
Muito Obrigado,

Luciano Bonfim de Azevedo
www.bonfim.com.br
luciano@bonfim.com.br
www.linkedin.com/in/lucianobonfim
Skype : lucianobonfim
Avatar do usuário
Poka
Usuário Nível 4
Usuário Nível 4
Mensagens: 563
Registrado em: 25 Out 2004 21:26
Localização: Leme/SP

Mensagem por Poka »

Obrigado Gralak e Luciano por responder.

Na verdade o que eu queria é o seguinte.

No meu sistema em clipper tenho uma função de pesquisa que funciona bem .

Exemplo feito em clipper:

vcodmed:=spac(3)
vcodpaci:=spac(3)
vcodconv:=spac(3)

//arquivos paciente, medico,convenio
set key f2 to teclaf2

@ 10,10 say "codigo medico: "get vcodmed pict"@k9";
valid pesquisa("medicos")

@ 11,10 say "codigo paciente: " get vcodpaci pict"@k9";
valid pesquisa("paciente")

@ 12,10 say "codigo convenio: "get vconvenio pict"@k9";
valid pesquisa("convenio")

read

if lastkey = esc
retu nil
endif


//////////////
func teclaf2

// simula a digitação do enter
keyboard chr(13)
publ teclaf2:=.t.
retu nil

///////////////
func pesquisa(nomearq)
if ! teclaf2 // nao pediu consulta
retu nil
endif
// aqui faço a pesquisa
retu nil

Dessa maneira se foi teclado f2 é porque o usuario quer consultar, vou na funcao teclaf2 simulo o enter para sair do get e na clausula valid do get vou para a função pesquisa e consulto o arquivo referente a cada get.

Na Minigui parece não ter funcoes similares a READVAR() . LASTKEY() E KEYBOARD. Sei que dever outros meios, mas não estou conseguindo fazer.

Me parece que a função _PushKey refere-se ao Keyboard, mas não consegui fazer funcionar.

Se tiverem alguma ideia de como fazer isso com GetBox, agradeço.

Poka
Responder