Buffer do teclado

7 respostas
R

Pessoal, boa tarde,
Então, eu fiz um programa que lê a porta paralela, dependendo do resultado ele muda a cor do JLabel que há no formulário, agora eu preciso jogar uma letra no buffer do teclado tentei usando o BufferedWriter mas não tenho certeza se é assim e também não funcionou, alguém pode me dar uma dica de como eu jogo um Caracter no buffer do teclado?

Obrigado

7 Respostas

R

então pessoal, estou tentando usar o BufferedWriter mas ele está com erro, não sei como inicializar ele.

Alguém pode me dar uma luz ai por favor.

Mikhas

Oque exatamente voce esta lendo da porta paralela? O teclado?

Se for um teclado convencional… porque você não usa um keyListener?

R

eu fiz o seguinte,
peguei um db-25 e nos conectores de entrada eu liguei um botão, no total deral 5 botoes. Quando eu aperto um botão dele muda o valor da porta, dai eu quero fazer o seguinte quando o valor for X ele digita a letra A. Dai eu abro o bloco de notas e vou apertando os botoes e digitando as letras.
:D

mas para isso preciso jogar a letra que eu quero la no buffer do teclado dai que eu não conssigo.
import java.awt.Color;
import java.awt.FlowLayout;


import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

import parport.ParallelPort;
public class PortaParalela extends JFrame {
	JLabel lByte;

	public PortaParalela(){
		super("Porta Paralela");
		setSize(200,200);
		setLocation(50,50);
		
		//Isntâncias
		lByte = new JLabel("0");
		JPanel p1 = new JPanel(new FlowLayout());
		p1.add(lByte);
		add(p1);
		
		
		setVisible(true);
	}
	
	
	static public void main(String args[]){
		int i = 0;
		
		PortaParalela p = new PortaParalela();
				
		ParallelPort porta = new ParallelPort(0x378);
		try{
			do{
			porta.write(127);
			p.lByte.setText("" + porta.read());
			p.lByte.setForeground(Color.black);
			if(porta.read() == 255){
				p.lByte.setForeground(Color.green);
			}else if(porta.read() == 63){
				p.lByte.setForeground(Color.red);
			}else if(porta.read() == 119){
				p.lByte.setForeground(Color.yellow);
			}else if(porta.read() == 111){
				p.lByte.setForeground(Color.blue);
			}else if(porta.read() == 95){
				p.lByte.setForeground(Color.orange);
			}else if(porta.read() == 191){
				p.lByte.setForeground(Color.magenta);
			}
			}while(i == 0);
		
		}catch(Exception e){
			System.out.println("Deu Pau" + e);
		}
		
		p.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
}
dai dentro de cada if eu jogo uma letra no buffer do teclado:
if(porta.read() == 255){
				p.lByte.setForeground(Color.green);
			}else if(porta.read() == 63){
				p.lByte.setForeground(Color.red);
			}else if(porta.read() == 119){
				p.lByte.setForeground(Color.yellow);
			}else if(porta.read() == 111){
				p.lByte.setForeground(Color.blue);
			}else if(porta.read() == 95){
				p.lByte.setForeground(Color.orange);
			}else if(porta.read() == 191){
				p.lByte.setForeground(Color.magenta);
			}
R

teria como utilizar o Scanner para jogar isso no buffer do teclado???

eu quero exatamente jogar valores no teclado como se fosse o usuário que estive-se digitando.

R
:? Então tentei usar o Scanner mas nada ele da erro olhem o erro:
Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
	keyListenner cannot be resolved to a type

	at testeBufferedWriter.main(testeBufferedWriter.java:11)
R
este é o código que gera o erro acima:
import java.util.Scanner;


public class testeBufferedWriter{
	static Scanner s;
	public static void main(String args[]){
		s = new Scanner((Readable) System.out);
		int i = 0;
		do{
			s.next("1");
		}while(i == 0);
	}
	
}
R

Estou tentando usar o KeyListener mas não conssegui :x

vi em um forum falando sobre usar Robot.

estou dando uma garimpada sobre Robot

Help me
:smiley:

Criado 11 de novembro de 2008
Ultima resposta 12 de nov. de 2008
Respostas 7
Participantes 2