O programa abaixo serve de exemplo para capturar teclas que são
pressionadas. Copie e cole no Eclipse IDE e é só rodar. Modifique como
for necessário.
import java.awt.*;
import java.awt.event.*;
public class KeyPress extends Frame{
Label label;
TextField txtField;
public static void main(String[] args) {
KeyPress k = new KeyPress();
}
public KeyPress(){
super("Key Press Event Frame");
Panel panel = new Panel();
label = new Label();
txtField = new TextField(20);
txtField.addKeyListener(new MyKeyListener());
add(label, BorderLayout.NORTH);
panel.add(txtField, BorderLayout.CENTER);
add(panel, BorderLayout.CENTER);
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent we){
System.exit(0);
}
});
setSize(400,400);
setVisible(true);
}
public class MyKeyListener extends KeyAdapter{
public void keyPressed(KeyEvent ke){
char i = ke.getKeyChar();
String str = Character.toString(i);
label.setText(str);
}
}
}
como faria para ele capturar as teclas pressionadas fora da aplicação
ResponderExcluirAcredito que seja necessário ter uma aplicação. O conceito de aplicação, até onde entendo, é o próprio programa rodando. Se você deseja capturar as teclas então precisa de um programa que faça isso, seja ele qual for. O que você pode fazer é usar o Eclipse para escrever o programa e depois exportar o código em um .JAR e algum outro programa deverá chamar a execução desse JAR.
ResponderExcluirA unica forma de capturar fora da aplicação seria usando um dispositivo externo. Um outro hardware, no caso um microcontrolador no barramento do teclado. Como um chupa cabra. Mas aí já é outro departamento. É um trabalho bem maior pois envolve além de um outro software também um outro hardware.
ResponderExcluir