►Harbour 3.x | Minigui xx-x | HwGui◄ Pense nas possibilidades abstraia as dificuldades. Não corrigir nossas falhas é o mesmo que cometer novos erros. A imaginação é mais importante que o conhecimento. (Albert Einstein)
Você pode utilizar este recurso com MiniGui e HwGui on a função inkey não funciona.
►Harbour 3.x | Minigui xx-x | HwGui◄ Pense nas possibilidades abstraia as dificuldades. Não corrigir nossas falhas é o mesmo que cometer novos erros. A imaginação é mais importante que o conhecimento. (Albert Einstein)
aSimoes, vc testou se dá pra fazer um Translate, tipo se alguém estiver migrando de Console pra GUI e tem várias chamadas Inkey no sistema fazer um Translate ou algo do tipo para não precisar ficar trocando no código, ai tipo
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop Celular Android/iOS Windev Mobile WEB Windev Web
Acho que funciona sim Fladimir.
vou testar e informo o resultado.
►Harbour 3.x | Minigui xx-x | HwGui◄ Pense nas possibilidades abstraia as dificuldades. Não corrigir nossas falhas é o mesmo que cometer novos erros. A imaginação é mais importante que o conhecimento. (Albert Einstein)
o translate funciona só tem que ver a questão do tempo que é em milisegundos ou seja para 1 segundo = 1000, então o inkey teria que ser inkey(1000)
Tem que analisar isso e usar onde for realmente necessário.
#xtranslate inkey(<n>) => inkeygui(<n>)
►Harbour 3.x | Minigui xx-x | HwGui◄ Pense nas possibilidades abstraia as dificuldades. Não corrigir nossas falhas é o mesmo que cometer novos erros. A imaginação é mais importante que o conhecimento. (Albert Einstein)
►Harbour 3.x | Minigui xx-x | HwGui◄ Pense nas possibilidades abstraia as dificuldades. Não corrigir nossas falhas é o mesmo que cometer novos erros. A imaginação é mais importante que o conhecimento. (Albert Einstein)
Não, porque ela retorna o valor da tecla digitada e a função millisec até onde eu sei não faz isso.
►Harbour 3.x | Minigui xx-x | HwGui◄ Pense nas possibilidades abstraia as dificuldades. Não corrigir nossas falhas é o mesmo que cometer novos erros. A imaginação é mais importante que o conhecimento. (Albert Einstein)
Uma observação a todos a função só trabalha com inteiros ou seja se passar valores tipo .5 ou 1.5 não vai funcionar, a não ser que alguém altere o código da função.
►Harbour 3.x | Minigui xx-x | HwGui◄ Pense nas possibilidades abstraia as dificuldades. Não corrigir nossas falhas é o mesmo que cometer novos erros. A imaginação é mais importante que o conhecimento. (Albert Einstein)
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop Celular Android/iOS Windev Mobile WEB Windev Web
No Clipper eu fazia isso, mas usando fonte Clipper e OSLIB.
Mas em GUI nem sempre dá pra usar o Inkey.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2) "The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell" https://github.com/JoseQuintas/
FUNCTION SysWait(nWait)
LOCAL iTime:=Seconds()
HB_Default(@nWait,5)
DO WHILE Seconds() - iTime < nWait
hb_idlesleep() //necessário para não sobrecarregar o processador
hwg_doevents() //ou do events (minigui) ou nenhuma das duas se usado somente em modo console.
ENDDO
RETURN Nil
►Harbour 3.x | Minigui xx-x | HwGui◄ Pense nas possibilidades abstraia as dificuldades. Não corrigir nossas falhas é o mesmo que cometer novos erros. A imaginação é mais importante que o conhecimento. (Albert Einstein)
Alem de capturar a tecla pressionada, eu uso o inkey para, por exemplo, exibir uma mensagem por nSegundos na tela antes de sumir.
No meu sistema feito com hwgui, substitui os inkey's por millisec. Ocorre que sempre q chamo essa função o dialog trava (aparece na barra de titulo "não está respondendo").
Mas com essa sua função (INKEYGUI()) nao trava de jeito nenhum! Gostei!!!