swing (urgente)
Hola buenas!
Tengo un problemilla y es que no se como podria colorear un determinado texto en un textArea.
Por ejemplo,poner de rojo la linea 3 o buscar un determinado texto y luego colorearlo.
Si me podeis mandar algun ejemplo o algo os lo agradeceria un mazo porke llevo tiempo dandole vueltas y no se hacerlo.
gracias
Tengo un problemilla y es que no se como podria colorear un determinado texto en un textArea.
Por ejemplo,poner de rojo la linea 3 o buscar un determinado texto y luego colorearlo.
Si me podeis mandar algun ejemplo o algo os lo agradeceria un mazo porke llevo tiempo dandole vueltas y no se hacerlo.
gracias
También puedes hacerlo si utilizas un JTextPane, en lugas de un JTextArea... Te explico, quizá sea más rollo que de la otra manera, no sé, tu verás.
//Definiciones que deberÃas hacer
JTextPane areaTexto;
StyledDocument doc;
doc = areaTexto.getStyledDocument();
MutableAttributeSet keyWordRed;
keyWordRed = new SimpleAttributeSet();
StyleConstants.setForeground(keyWordRed, Color.red);
//Y la instrucción que te cambia el color del texto serÃa:
doc.setCharacterAttributes(inicio, longitud, keyWordRed, false);
Donde inicio es la posicion de inicio del texto que quieres cambiar, y logitud, la largura del texto. Eso lo puedes sacar con: areaTexto.getSelectionStart(); y areaTexto.getSelectionEnd(); (Si es que quieres colorear un texto seleccionado, si no, simpre deberás averiguar la posicion)
Espero que te sirva de ayuda.
Saludos!
//Definiciones que deberÃas hacer
JTextPane areaTexto;
StyledDocument doc;
doc = areaTexto.getStyledDocument();
MutableAttributeSet keyWordRed;
keyWordRed = new SimpleAttributeSet();
StyleConstants.setForeground(keyWordRed, Color.red);
//Y la instrucción que te cambia el color del texto serÃa:
doc.setCharacterAttributes(inicio, longitud, keyWordRed, false);
Donde inicio es la posicion de inicio del texto que quieres cambiar, y logitud, la largura del texto. Eso lo puedes sacar con: areaTexto.getSelectionStart(); y areaTexto.getSelectionEnd(); (Si es que quieres colorear un texto seleccionado, si no, simpre deberás averiguar la posicion)
Espero que te sirva de ayuda.
Saludos!
