Bonjour à tous,

je suis en train de réaliser un éditeur de bbcode personnalisé et je bute sur la coloration des balises.

Voici le code :

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
int debut = area.getSelectionStart();
int fin = area.getSelectionEnd();
 
	Document doc = area.getStyledDocument();
	Color c = Color.RED;
	SimpleAttributeSet attr = new SimpleAttributeSet();
	StyleConstants.setForeground(attr, c);			
 
	try{
		   doc.insertString(debut, "[tab]", attr);
		    StyleConstants.setForeground(attr, Color.black);
	}
	catch(javax.swing.text.BadLocationException e1){
		    e1.printStackTrace();
	}
 
	area.requestFocusInWindow();
	area.setCaretPosition(fin+5);
Lorsque j'ajoute ma balise, je lui attribue la couleur sans problème. Seulement, quand j'écris du texte derrière, ce texte a la même couleur que la balise, or j'aimerais qu'il redevienne noir.

J'ai tenté de rajouter la portion de code suivante derrière mais je ne veux pas qu'il y ait d'espace entre la balise et le texte qui suit

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
try{
	StyleConstants.setForeground(attr, Color.black);
		    doc.insertString(fin, " ", attr);
	}
	catch(javax.swing.text.BadLocationException e1){
		    e1.printStackTrace();
	}
 
	area.requestFocusInWindow();
	area.setCaretPosition(fin);
J'ai aussi essayé en ajoutant des Styles sur la balise mais le problème est le même, il ne repasse pas en noir après le crochet fermant de la balise

Est-ce que vous auriez une idée ?

Merci d'avance