Desabilitar teclado para uso de Código de Barras

Pessoal, preciso utilizar um leitor de código de barras em uma tela, num campo TextBox, mas para isso preciso desabilitar o uso do teclado neste campo, alguém sabe como fazer isso?

Não deveria ter como, já que o leitor de código de barras se comporta, para todos os efeitos, como um teclado bem rápido (como se você tivesse uma pessoa que digitasse bem rápido).

(Em um lugar onde precisamos de algo semelhante, pedimos ao fabricante do hardware que mandasse um código especial, que um teclado normal não conseguisse gerar, para que o programa soubesse que era o tal hardware, não uma pessoa, que estava digitando os códigos. Mas no seu caso acho que isso não é viável.)

O que você pode fazer é que o textbox seja apenas um lugar onde você posiciona o cursor, e onde as teclas digitadas não aparecem (ou seja, você pode usar letras brancas em fundo branco, por exemplo).
Mas na prática é bom ter um textbox grande mesmo, para que a pessoa possa digitar o código manualmente se tiver problemas com o leitor de código de barras (isso ocorre o tempo todo).

Existem dois tipos de leitores:

  1. PS2/USB
  2. Serial

No primeiro caso o comportamento é como se você tivesse digitado e em seguida apertado Enter,
ja no segundo caso vc vai ter que fazer um programa para fazer a leitura da porta serial.


Uma Solução para evitar que o usuário acesse o teclado é pegar todos os campos editáveis da tela com
componente.setEditable(false)

Porém se o modelo do scanner for o primeiro, ele também não vai funcionar.

Se o modelo for o segundo, esse componente é interessante para leitura de portas seriais:
http://users.frii.com/jarvi/rxtx/

Abraço,

O leitor que estou utilizando é USB.