Bonjour a tous.
J'ai une question super bete.
Je souhaiterait detecter les touche taper a l'ecran meme si l'application n'a pas le focus.
Comment faire ?
Dois-je mettre mon application dans un systemtray (deja essayer mais marche pas) ?
Dois-je essayer les eventQueue(deja tester maiçs sa marche pas) ?
Dois-je redemander le focus a chaque fois que je le pert (je ne pense pas sinon toute mes autre application serait inutilisable) ?
Contenue de la classe fenetre :
contenue de la classe keylistener :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 import javax.swing.JFrame; import javax.swing.JLabel; public class fenetre{ JFrame fenetre = new JFrame("test keylistener") ; JLabel labelTouche = new JLabel("la touche presser est : ") ; keyListener keyListener = new keyListener(this) ; public fenetre(){ fenetre.addKeyListener(keyListener) ; fenetre.add(labelTouche) ; fenetre.setSize(400,400) ; fenetre.setVisible(true) ; fenetre.setAlwaysOnTop(true) ; } public static void main(String[] args) { new fenetre() ; } }
Merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 import java.awt.event.KeyEvent; import java.awt.event.KeyListener; public class keyListener implements KeyListener{ fenetre fenetre ; public keyListener(fenetre fenetre ) { this.fenetre = fenetre ; } public void keyPressed(KeyEvent e) { fenetre.labelTouche.setText("la touche presser est : "+e.getKeyChar()) ; } @Override public void keyReleased(KeyEvent e) { // TODO Auto-generated method stub } @Override public void keyTyped(KeyEvent e) { // TODO Auto-generated method stub } }
Partager