Validar Get durante a digitação

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

Avatar do usuário
binho_fasa
Usuário Nível 2
Usuário Nível 2
Mensagens: 93
Registrado em: 06 Jul 2004 12:53
Localização: Brazil
Contato:

Validar Get durante a digitação

Mensagem por binho_fasa »

Caros amigos, gostaria de saber se existe alguma forma de validar o get conforme o usuário for digitando. Preciso disto pois trabalho um um mini teclado que possui um pequeno display, que deve exibir os dados na tela do computador e no pequeno display do mini teclado ao mesmo tempo.

Obrigado
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Re: Validar Get durante a digitação

Mensagem por Maligno »

binho_fasa escreveu:Caros amigos, gostaria de saber se existe alguma forma de validar o get conforme o usuário for digitando. Preciso disto pois trabalho um um mini teclado que possui um pequeno display, que deve exibir os dados na tela do computador e no pequeno display do mini teclado ao mesmo tempo.Obrigado
Processar cada tecla conforme o usuário for digitando é tarefa possível, mas apenas após modificar o sub-sistema GETSYS do Clipper. Mas, se estiver disposto, é relativamente simples. E nem é tão trabalhoso.
O comando GET precisa receber uma ligeira alteração, permitindo a você informar um bloco de código que será executado a cada pressionar de tecla. Após isso, será necessário apenas fazer um "gancho" no GETSYS (o fonte está no diretório do Clipper). Se não me falha a memória, numa função chamada GetApplyKey() há um ponto em que a tecla é analisada e inserida no buffer do pseudo-objeto GET. Antes (ou depois) disso ser feito, execute o bloco informado no seu novo comando GET.

[]'s
Maligno
http://www.buzinello.com/prg
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Validanção de cada tecla digitada

Mensagem por Pablo César »

Exatamente, a idéia é processar cada tecla digitada, como o Maligno disse. Outra forma de você fazer o que o Maligno indicou (mudança no GETSYS), você pode fazer uma função que fique num DO WHILE e que saia só quando der ENTER ou ESC. Esta função deve ser chamada no teu GET através do WHEN. Claro que a tua função sempre tem que retornar .T (TRUE, isto é, verdadeiro). E para finalizar na tua função, coloque o conteudo do que foi digitado numa variavel que será utiliza no final pelo KEYBOARD variavel. inclusive você poderá fazer muitas implementações nessa sua função, inclusive o tratamento de telas que você queira aceitar ou não.

Vai tentando Binho, uma dessas opções e volte com o que você conseguiu, que daremos uma mãozinha.

Um clip-abraço
:)Pos
Responder