Le robot Java ne peut pas contrôler tout le clavier
J'ai essayé de faire une sorte de classe de contrôleur de clavier mais le robot java semble être incapable de conrol le clavier entier.
J'ai essayé
robot.keyPress(i);
Thread.currentThread().sleep(50);
robot.keyRelease(i);
De 0 à 255 et cette touche n'est jamais enfoncée (cette touche est présente sur tous les claviers azerty).
Une idée pourquoi? Grâce.
Ps: vous n'avez pas besoin d'appuyer sur CTRL ou ALT pour utiliser cette touche, elle produit ceci: "2"
1 answers
Vous pouvez essayer de créer une nouvelle fenêtre, et lui faire capturer et imprimer les codes de touches pour les touches enfoncées. Puis exécutez-le et appuyez sur la touche en question. il devrait ensuite imprimer le KeyCode
pour cela:
public static void main(String[] args) {
JFrame frame= new JFrame();
frame.addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
System.out.println(e.getExtendedKeyCode());
}
});
frame.setBounds(0, 0, 100, 50);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
Le Faire avec un clavier virtuel m'a donné 16777394
Voir http://docs.oracle.com/javase/7/docs/api/constant-values.html#java.awt.event.KeyEvent.CHAR_UNDEFINED pour toutes les valeurs 'KeyCode'