Мой вопрос здесь довольно прост. Можно ли сделать JTextArea прозрачным, но не полностью невидимым? Кроме того, если это возможно, как я могу нарисовать изображение позади него (сначала нарисовать изображение, а затем нарисовать поверх него прозрачную текстовую область)?
1) Переопределить метод paintComponent () JTextArea что-то вроде:
g.drawImage(...); super.paintComponent(g);
2) При создании текстовой области вам необходимо придать ей прозрачный фон:
setBackground( new Color(r, g, b, alpha) );
Вы также можете сделать это:
jScrollPane.setOpaque(false); jScrollPane.getViewport().setOpaque(false); jScrollPane.setBorder(null); jScrollPane.setViewportBorder(null); jTextArea.setBorder(null); jTextArea.setBackground(new Color(0, 0, 0, 0));
jscrollpane является непосредственным родительским компонентом jtextarea.