Página 1 de 1

SETKEY(538,{|| XXX()}) não funciona

Enviado: 05 Fev 2019 13:28
por juniorcamilo
boa tarde!!

utilizo o setkey(538,{|| xxx()}) mas não acessa !!
538 = CTRL_Z

desde já grato!!

SETKEY(538,{|| XXX()}) não funciona

Enviado: 05 Fev 2019 14:29
por Jairo Maia
Que key é essa? É uma key que você definiu?

Por padrão CTRL_Z é 26

SETKEY(538,{|| XXX()}) não funciona

Enviado: 05 Fev 2019 15:05
por juniorcamilo
quando teclo ctrl+z lastkey() apresenta 538

no clipper apreseta 26 mas no harbour 538!!!

SETKEY(538,{|| XXX()}) não funciona

Enviado: 05 Fev 2019 15:44
por Jairo Maia
Tem algo errado...

Compile com seu Harbour esse exemplo, tem que retornar 26:

Código: Selecionar todos

#include "inkey.ch"

Function Main()

 Clear Screen
 
 While LastKey() != K_ESC
  @ 5,10 Say "Pressione CTRL+Z"
  Inkey( 0 )
  
  If LastKey() = K_CTRL_Z
   Hb_Alert( "Você pressionou " + Hb_NToS( LastKey() ) )
  EndIf
  
 EndDo

Return Nil

SETKEY(538,{|| XXX()}) não funciona

Enviado: 05 Fev 2019 16:54
por juniorcamilo
olha ai!!
tive q ,udar um pouco o codigo seu!!

Código: Selecionar todos

While LastKey() != K_ESC
  @ 5,10 Say "Pressione CTRL+Z"
  Inkey( 0 )

  If LastKey() = 538
   Alert( "Você pressionou " + Hb_NToS( LastKey() ) )
  EndIf

 EndDo

SETKEY(538,{|| XXX()}) não funciona

Enviado: 05 Fev 2019 17:45
por Jairo Maia
Com meu Harbour se compilar seu fonte (nem compilei) vai dar RTE dizendo que a variável K_ESC não existe. Você está usando algum arquivo customizado para definição de teclas.

SETKEY(538,{|| XXX()}) não funciona

Enviado: 05 Fev 2019 18:07
por juniorcamilo
eu uso o prg do visual e o .ch onde defino essas variáveis!!!
mas estou usando exatamente seu exemplo, so mudei o K_CTRL_Z para 358!!

SETKEY(538,{|| XXX()}) não funciona

Enviado: 05 Fev 2019 19:15
por Jairo Maia
juniorcamilo escreveu:mas estou usando exatamente seu exemplo, so mudei o K_CTRL_Z para 358!!
Não foi só! Você removeu também essa chamada de include:

Código: Selecionar todos

#include "inkey.ch"
Tem como postar seu arquivo .CH de definições de teclas? Se eu ou outro colega puder podemos analisar.

SETKEY(538,{|| XXX()}) não funciona

Enviado: 05 Fev 2019 20:05
por JoséQuintas
Até pensei que poderia existir diferença na forma de uso, mas sempre o mesmo resultado.
tecla.png

Tá mais pro uso de inkey extendido, ou a tabela de teclas do Windows.
Tente CTRL-Z mas com cada um dos controls do teclado, o direito deve retornar diferente do esquerdo, provavelmente diferença de 10.

SETKEY(538,{|| XXX()}) não funciona

Enviado: 06 Fev 2019 09:30
por juniorcamilo
Realmente isso Eric.Developer!!
sou novo ainda na harbour, confundo bastante a questão de xharbour o harbour!!
mas fiz alteração para 538 esta funcionando perfeitamente!!
obrigado!