Bonjour,
J'ai des checkbox. Quand je les coche, des mots du texte sont surlignés (couleur différente selon la checkbox). Quand je les décoche, les mots doivent réapparaitre comme avant. Mon code fonctionne bien quand je coche. Mais quand je décoche, il fonctionne de temps en temps: pour un meme texte, si je fais plusieurs lancements de l'application, je n'obtiens pas la meme chose:
- soit tous les mots surlignés redeviennent comme avant et c'est ce que je veux
- soit quelques mots restent surlignés. Et ce ne sont pas toujours les memes à chaque lancement de l'application.
voici mon code:
Merci de votre aide
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
29
30
31
32
33
34
35
36
37 public void itemStateChanged(ItemEvent e) { ... Object source = e.getItemSelectable(); ... if (source == checkbox1) { ... String matchColored ="<font size=\"4\" style bgcolor=\"blue\" color=\"white\">"+matchFound+"</font>"; contenu = contenu.replaceAll(matchFound, matchColored); zone_texte.setText(contenu); } else if (source == checkbox2) { ... String matchColored ="<font style bgcolor=\"#00FFFF\">"+matchFound+"</font>"; contenu = contenu.replaceAll(matchFound, matchColored); zone_texte.setText(contenu); } if (e.getStateChange() == ItemEvent.DESELECTED){ if (checkbox1 == e.getItem()){ ... String matchColored ="<font size=\"4\" style bgcolor=\"white\" color=\"black\">"+matchFound+"</font>"; contenu = contenu.replaceAll(matchFound, matchColored); zone_texte.setText(contenu); } if (checkbox2 == e.getItem()){ ... String matchColored ="<font style bgcolor=\"white\" color=\"black\">"+matchFound+"</font>"; contenu = contenu.replaceAll(matchFound, matchColored); zone_texte.setText(contenu); } }
Partager