GARANTIR DESCONTO

Fórum como interromper sinal do teclado.. #270696

02/03/2005

0

seguinte... tenho um programa q qndo eu clicko em uma tecla ... ele faz algo ... porem nao posso modificar essas teclas do programa ...
e tenho um teclado ... teclado mesmo com 5 teclas ... q jah estao definidas por mim... e nao posso mudar pois no circuito do teclado eu jah padronizei elas....


entao quero fazer o seguinte...

quero qndo eu clickar no MEU teclado .... ex na letra A

ele interroper o sinal ou sei la, transformar na letra Z ... para que o programa possa interpretar o sinal e fazer oq eu quero...
tenderam?

ex:

JOGO:
teclas: Q, E, S , Z, C

MEU TECLADO:
teclas: I, U, E, W, S

qndo eu clickar no meu I ... ele manda o sinal Q, qndo aperto o U, ele manda o E... e assim sucessivamente....

:P

valeuz galera, quem puder me dar um help ae!

;)


Salsa

Salsa

Responder

Posts

02/03/2005

Massuda

Como você ligou seu teclado ao PC? Existe a possibilidade de usar um remapeamento de teclas por software; é o mesmo truque usado para desativar a tecla Windows dos teclados modernos.


Responder

Gostei + 0

02/03/2005

Beppe

Qualquer coisa, fale.
var
  Sinais: array[Char] of Char;

procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
  Key := Sinais[UpCase(Key)];
end;
...
initialization
  Sinais[´I´] := ´Q´;
  Sinais[´U´] := ´E´;
  Sinais[´E´] := ´S´;
  Sinais[´W´] := ´Z´;
  Sinais[´S´] := ´C´;



Responder

Gostei + 0

02/03/2005

Salsa

como assim initialization?


e massuda.... c tem exemplo de como desativar teclas do teclado como vc disse?


Responder

Gostei + 0

02/03/2005

Massuda

... c tem exemplo de como desativar teclas do teclado ...
Exemplo eu não tenho. Esse assunto surgiu algum tempo atrás quando um colega aqui do fórum queria [url=http://forum.clubedelphi.net/viewtopic.php?t=58367]desabilitar o botão Iniciar e a tecla de atalho correspondente[/url].

A [url=http://www.jsiinc.com/SUBA/tip0400/rh0484.htm]dica[/url] é uma alteração no Registro do Windows através de remapeamento do teclado (código de varredura -> tecla), feita via RegEdit, mas poderia ser feita programaticamente.

Este [url=http://www.microsoft.com/whdc/device/input/w2kscan-map.mspx]link[/url] da Microsoft tem informações sobre o formato dos dados do filtro.


Responder

Gostei + 0

03/03/2005

Salsa

num entendi mto bem....
como posso usar essas dicas pra fazer oq eu quero...

alguem pode me dar um help?

o exemplo do Beppe eu nao testei ainda...
mas seria +/- akilo q eu quero...
remapear .. quero q ele receba uma tecla do teclado ....
e jah dispare outra... pro programa nao interpretar a tecla X ou Y saka ...

ex ... no meu teclado eu tenho mapeado a tecla E
no meu prog tb....

ex.... as letras equivalem a direcionais de um controle:

no jogo:
 Q = diagonal cima esquerda
 E = diagonal cima direita
 S = meio
 Z = diagonal baixo esquerda
 C = diagonal baixo direita


no meu controle (teclado mapeado):
 I = diagonal cima esquerda
 U = diagonal cima direita
 E = meio
 W = diagonal baixo esquerda
 S = diagonal baixo direita


vcs podem notar q infelizmente o meu teclado e o jogo tem 2 teclas iguais .... no caso o ´E´ e o ´S´ ....

por isso quero enquanto executar meu programa ...
fazer com q o windows... troque as teclas..

q qndo eu teclar as teclas do meu teclado... ele envie sinais de teclas diferentes ... pra funcionar no jogo...
sem q ele misture os dados... pois infelizmente tenho 2 teclas iguais.. e eh necessario fazer isso...

alguem tem ideias ae pra me dar um help?

valeuz!!!

:P


Responder

Gostei + 0

03/03/2005

Beppe

initialization é uma seção que vai logo anets do end na unit. Este código é executado por primeiro no programa.


Responder

Gostei + 0

03/03/2005

Salsa

Beppe mas vc axa q desse jeito psoso fazer oq quero?


Responder

Gostei + 0

03/03/2005

Beppe

Beppe mas vc axa q desse jeito psoso fazer oq quero?


A princípio sim. Desde que este código seja executado antes do seu, pode ser até no mesmo evento que vc trata a teclado, aliás, qual evento de qual objeto usa?

Não ficou muito claro pra mim como é este seu teclado...mas acho que isto não importa.


Responder

Gostei + 0

03/03/2005

Salsa

o meu teclado eh um teclado de computador mesmo.... um teclado normal... onde eu coloquei os fios no circuito e fiz a combinaçao de teclas ......

q sai cada letra dakela q eu expliquei qndo fecho um circuito .. tendeu?

fecho um circuito ele digita a tecla respectiva a combinaçao q eu kis .. I, U, E ... etc etc .... :P


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar