Capturar Evento do Teclado no Console

7 respostas
atsuki

Boa Noite,

Estou precisando criar um programa em que um determinado caracter seja movido numa matriz, tudo isso deve ser feito em console. Estou tendo dificuldade em capturar a entrada no teclado, existe algum tipo de captura de eventos em java que possa ser usado no console?
Só preciso de alguma ajuda em como capturar esses dados, não é necessário receitinha pronta, mas toda e qualquer dica ou ajuda será bem vista :smiley: :

Grato desde já.

Att.
Robson Carvalho.

7 Respostas

Andre_Rosa

Procure pela classe Scanner, da biblioteca java.util.

ViniGodoy

Para ler do teclado, você pode fazer:

Scanner scan = new Scanner(System.in);
  String linha = scanner.nextLine(); //Lê uma linha do console

Infelizmente, o java tem um suporte pífio a console. Não é possível, por exemplo, simplesmente monitorar uma tecla, como o getch() do C faz.

atsuki

Eu tenho conhecimento de como usar o scanner, mas com ele é preciso digitar a letra e logo após pressionar enter.
Usando o próprio scanner ou algum evento é possivel capturar a tecla digitada e executar a respectiva ação sem que seja necessário pressionar enter? Penso que assim tudo torna-se muito mais fluido.

Edit: Obrigado ViniGodoy, procurei tanto pela solução deste pequeno problema que não me surpreendo em não ser possivel resolve-lo no console.

Obrigado Pela Ajuda.

claudneto

Não é uma aplicação swing?

Se for, vc pode colocar o evento no change do text field/area. Conforme for mudando o valor do text field, ele vai executando o código.

atsuki

A priori eu pretendia fazer em console, mas vou fazer em swing mesmo e qualquer nova duvida eu volto aqui.

Muito obrigado pela ajuda.

Andre_Rosa

Se realmente quiser fazer isso, implemente uma DLL com uma função em C que faça isso, usando getch(), como foi sugerido.

ViniGodoy

Como falei acima, não. O java não tem esse tipo de suporte. =/

Criado 28 de abril de 2011
Ultima resposta 28 de abr. de 2011
Respostas 7
Participantes 4