Je crée un éditeur de texte avec la mise en évidence de la syntaxe dans Java à l'aide de JTextPane. Lorsque j'exécute le programme, j'obtiens cette sortie: https://www.dropbox.com/s/kkce9xvtriujizy/Output.JPG?dl=0La syntaxe JTextPane La mise en évidence des décalages est incorrecte
Je veux que chaque balise HTML soit surlignée en rose, mais après quelques balises elle commence à mettre en évidence les mauvaises zones.
Voici le code de mise en évidence:
private void htmlHighlight() {
String textToScan;
textToScan = txtrEdit.getText();
StyledDocument doc = txtrEdit.getStyledDocument();
SimpleAttributeSet sas = new SimpleAttributeSet();
while(textToScan.contains(">")) {
StyleConstants.setForeground(sas, new Color(0xEB13B1));
StyleConstants.setBold(sas, true);
doc.setCharacterAttributes(textToScan.indexOf('<'), textToScan.indexOf('>'), sas, false);
StyleConstants.setForeground(sas, Color.BLACK);
StyleConstants.setBold(sas, false);
textToScan = textToScan.substring(textToScan.indexOf('>') + 1, textToScan.length());
}
}
Merci à l'avance!
mais ma nouvelle sortie ressemble maintenant à ceci: – JPadley
https://www.dropbox.com/s/eb0dicxur99cr0w/newOutput.JPG ? dl = 0 – JPadley
@JPadley ouais, désolé à ce sujet. Nouvelle mise à jour. –