J'essaie et je n'arrive pas à comprendre comment utiliser les composants de l'éditeur de texte Java pour coloriser le texte lorsque vous l'insérez. Je ne veux pas ou besoin d'une bibliothèque de mise en évidence de la syntaxe complète.Faire des mots de différentes couleurs dans JTextField/JTextPane /?
Fondamentalement, j'ai un JTextField (ou un autre composant JText ...), et une liste de mots. Je veux que tous les mots dans le champ qui apparaissent dans la liste soient rouges, et le reste des mots soit vert. Ainsi, par exemple, si "fire" est dans la liste, "fir" apparaîtra en vert et "fire" apparaîtra en rouge.
J'ai essayé d'utiliser un JTextPane et un DefaultStyledDocument, en utilisant un KeyListener pour passer en revue le texte dans le document et en utilisant AbstractStyledDocument.replace pour remplacer les mots existants par des versions qui ont les attributs corrects. Cela n'a rien fait. Qu'est-ce que je fais mal?
La difficulté est que j'ai besoin de faire cette coloration à la volée lorsque l'utilisateur tape dans le texte. Donc je n'ai pas autant besoin de créer du texte que de le colorer au fur et à mesure. – Zarkonnen
Les trucs de mon EDIT (au sud de la ligne horizontale) devraient vous aider. L'écoute sur le modèle vous permet de répondre à tout texte nouveau/modifié en le colorisant comme bon vous semble. –