Cores em palavras específicas num JTextArea

1 resposta
M

Como eu poderia fazer para que uma palavra fique colorida em um texto, sendo que essa palavras estão num array de palavras para serem coloridas…

palavras = ( HTML, Int, Char, Void ) //exemplo

String = " eu nao sei HTML nem usar os tipos Char,Int nem Void"

queria que logo depois de digitar as palavras elas jah ficassem
String = " eu nao sei [color=“red”]HTML[/color] nem usar os tipos [color=“red”]Char[/color],[color=“red”]Int[/color] nem [color=“red”]Void[/color]"

eu gostaria que essas palavras ficassem vermelhas logo depois de digitadas, alguem pode me dar uma luz?

1 Resposta

T

Olha, posso estar falando besteira, mas tente estudar as classes StringBuffer e os ouvintes de teclado… E, se não me engano, JTextArea também trabalha com a interface PlainDocument, o que pode te ajudar!

EU, se fosse tentar fazer o que você pretende (e que eu entendi) formataria um “PlainDocument”, para ‘escutar’ os caracteres do teclado e, quando eu identificasse uma sequencia de caracteres conforme a contida na array (conforme você citou), tentaria colorir essa palavra usando ou um setForeground(new Color(122, 122, 122)) ou então eu inseriria um objeto String com a cor que eu quero no local dessa palavra!
Mas não sei se daria certo… Vamos enchendo linguiça que uma hora achamos a solução!

Criado 23 de fevereiro de 2003
Ultima resposta 4 de mar. de 2003
Respostas 1
Participantes 2