Página 1 de 1

Como limpar o buffer do inkey?

Enviado: 03 Mar 2008 21:40
por Adalberto
Boa noite caros colegas.

Mais uma vez molestando vocês.

Estou procurando uma função que limpe o buffer do inkey, uso o comando KEYBOARD e depois necessito limpar a buffer. ¿Alguém pode me ajudar?. Fico a espera de suas noticias.

Muito obrigado

Enviado: 03 Mar 2008 22:04
por Clipper
Prezado Colega

Para limpar o buffer do tecldo use :

CLEAR TYPEAHEAD

Dizem que KEYBOARD CHR(0) também funciona, mas eu nunca testei.

Até logo.

Marcelo

Enviado: 04 Mar 2008 08:21
por Pablo César
Outra forma também é utilizar o INKEY()

Enviado: 06 Mar 2008 18:50
por andreh
Keyboard chr(27)

Enviado: 06 Mar 2008 19:01
por Clipper
andreh escreveu:Keyboard chr(27)
Neste caso não irá limpar o buffer, pelo contrário, irá inserir a simulação do pressionamento da tecla ESC.

Até logo.

Marcelo

Enviado: 07 Mar 2008 17:43
por vagucs
O clear typeahead e o keyboard limpam o buffer atual, de leitura da função inkey, mesmo depois deles, a função lastkey() continua retornando a ultima tecla pressionada.

Se você usa o LASTKEY para processamento, então faça uso do KEYBOARD <TECLA> seguido de um inkey(0) para um valor de tecla que vc não espere, é um dos poucos meios.

Já no xHarbour você pode usar a rotina SETLASTKEY(<VALOR>) para mudar o valor do lastkey, acompanhada do CLEAR TYPEAHEAD limpa todas as respostas de rotinas que lêem valores de teclas.