Java: прозрачный TextArea + рисовать фон - PullRequest
2 голосов
/ 03 января 2012

Мой вопрос здесь довольно прост. Можно ли сделать JTextArea прозрачным, но не полностью невидимым? Кроме того, если это возможно, как я могу нарисовать изображение позади него (сначала нарисовать изображение, а затем нарисовать поверх него прозрачную текстовую область)?

Ответы [ 2 ]

10 голосов
/ 03 января 2012

1) Переопределить метод paintComponent () JTextArea что-то вроде:

g.drawImage(...);
super.paintComponent(g);

2) При создании текстовой области вам необходимо придать ей прозрачный фон:

setBackground( new Color(r, g, b, alpha) );
0 голосов
/ 08 января 2014

Вы также можете сделать это:

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.

...