Comando Keyboard ??

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Dércio_Luiz_Zanatta
Usuário Nível 3
Usuário Nível 3
Mensagens: 153
Registrado em: 11 Jan 2006 15:37
Localização: Ibirubá - RS

Comando Keyboard ??

Mensagem por Dércio_Luiz_Zanatta »

Comando keyboard chr() não funciona depois de compilado com Xharbour..

Fiz um teste bem simples..

? Lastkey() && 13, pois a última tecla pressionada foi Enter
keyboard chr(32) && deveria jogar barra de espaço para o buffer do teclado
? Lastkey() && 13 Deveia ser 32, mas continua 13

alguém tem alguma idéia do pq não funciona isso ?
Avatar do usuário
janio
Colaborador
Colaborador
Mensagens: 1846
Registrado em: 06 Jul 2004 07:43
Localização: UBAJARA - CE

Mensagem por janio »

Experimente Keyboard(13) em vez de Keyboard chr(13)


Jânio
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Avatar do usuário
fladimir
Colaborador
Colaborador
Mensagens: 2445
Registrado em: 15 Nov 2006 20:21

Mensagem por fladimir »

Seguinte galera não comecei o tópico mas tamo aí para encontrar a solução... resolvi testar o exemplo do Dércio trocando pela dica do Janio ficou assim o código:

Código: Selecionar todos

? Lastkey()     
Keyboard(32) 
? Lastkey() 


E o Resultado foi:

Código: Selecionar todos

HbMake v1.20 - xHarbour Make Utility
Copyright (C) 2000-2007 xHarbour project - http://www.xharbour.org
xHarbour build 1.1.0 Intl. (SimpLex) / Borland C++ 5.5.1

     Compiling :TEST.PRG
     ┌────────────[ 100% ]───────────────┐
     │▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓│
     └─────────────────────────────────┘

C:\BCC55\BIN\ilink32  @makefile.lnk
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland

C:\x>test.exe

         0
         0
C:\x>
Então continuando o debate não tenho a mínima idéia pq não funcionou... pq usando tanto o exemplo do Dércio qto do Jânio da o mesmo resultado... alguém sabe o pq... ?

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

Mensagem por Maligno »

fladimir escreveu:

Código: Selecionar todos

? Lastkey()     
Keyboard(32) 
? Lastkey() 
Note que você inseriu o código ASCII no buffer, mas não o tirou de lá. Troque o último LastKey() por InKey().

Detalhe1: o comando Keyboard tanto recebe um número, quanto string ou uma matriz de valores (num e/ou char).

Detalhe2: o XHarbour também tem a função HB_KeyPut().
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Dércio_Luiz_Zanatta
Usuário Nível 3
Usuário Nível 3
Mensagens: 153
Registrado em: 11 Jan 2006 15:37
Localização: Ibirubá - RS

Mensagem por Dércio_Luiz_Zanatta »

Ola pessoal..
Encotrei a solução para o problema do Keyboard() com Xharbour..
Substitui pela função SETLASTKEY() e funcionou perfeitamente..
Um grande abraço e obrigado a todos..
Responder