Areas de texto transparente.

trojanus
20 de Octubre del 2005
Hola, me gustaria saber si existe alguna manera de colocar una imagen de fondo en un area de texto sea JTextArea, JEditorPane, o cualquier clase existente. Claro permitiendo que sea vea el texto escrito en ella.

Les agradeceria cualquier ayuda que puedan brindarme.

lauretaru
20 de Octubre del 2005
Hola,
Si te sirve de algo se que en un JLabel puedes incluir texto en formato HTML. Puedes poner cualquier tag de html menos el tag <img>. Podrías probar poniendole imagen de fondo <background src="..." >
Yo no lo he probado en JTextArea o JEditorPane, pero me imagino que funcionará igual que el JLabel.

Laura

chuidiang
20 de Octubre del 2005
Hola:

No he probado nunca, pero te cuento un par de ideas a ver si funcionan.
Los JComponent tienen un método setOpaque() para hacerlos transparentes o no. Haz transparente el JTextArea y mételo dentro de un JPanel.

Ahora sólo tienes que dibujar la imagen en el JPanel. Hereda de JPanel y redefine el método update(Graphics g). Este método debe dibujar la imagen con el Graphics que le pasan (g.drawImage(...)) y luego llamar al método paint(g), para que se dibujen los bordes del panel y demás.

Podrías incluso hacer esto en el JTextField directamente (heredar de él y redefinir el update()). Quizás sea una solución más directa, pero la imagen sólo afectará al JTextArea.

Se bueno.