Bonjour,
je suis en train de créer une applet contenant un JTextArea.
Mon souhait est de déclencher une action quelconque dès que le JTextArea obtient le focus.
J'ai donc essayer ceci :
Panal.java
TextAreaWithFocus.java
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 import javax.swing.*; import java.awt.*; public class Panal extends JPanel{ TextAreaWithFocus zoneTexte ; JLabel texte; public Panal(){ texte = new JLabel("Cliquez ci-dessous avant de commencer à dicter."); add(texte); zoneTexte = new TextAreaWithFocus(); add(zoneTexte); setBackground(Color.red); setLayout(new FlowLayout()); setSize(200,200); setVisible(true); } }
et un applet.java qui fait un "new Panal.java".
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 import javax.swing.*; import java.awt.*; import java.awt.event.*; public class TextAreaWithFocus extends JTextArea{ public TextAreaWithFocus(){ addFocusListener( new FocusListener(){ public void focusGained(FocusEvent e) { System.out.println("Focus gained"); } public void focusLost(FocusEvent e) { System.out.println("Focus lost"); } } ); } }
Ici, dès que je vais sur ma page contenant l'applet, je vois dans la console:
Donc déjà, il me met le focus dessus dès le chargement de la page...Focus gained
Focus lost
Focus gained
Avec le temps je me rend compte qu'en fait, c'est lorsque l'applet obtient le focus qu'elle envoit le message et non le TextAreaWithFocus.
J'ai du faire une petite erreur, mais je ne la vois pas!
Merci d'avance pour votre temps cérébral utilisé.
ps: sinon, s'il y a moyen que l'applet n'obtienne pas le focus dès le chargement de la page, ça me va aussi![]()
Partager