6

我想显示一个描述节点值的文本区域(图形项目),但是每当我选择文本时它就会变得混乱,所以我希望它是不可分割的!这是代码:

public class TransparentTextArea extends JTextArea {

String texte;

public TransparentTextArea(String texte) {
    this.setLineWrap(true);
    this.setWrapStyleWord(true);
    this.texte = texte;
    this.setBackground(new Color(255, 0, 9, 0));
    this.setFont(new Font("Serif", Font.ITALIC, 24));
    this.setEditable(false);
    this.setText(texte);
    this.setSize(new Dimension(200,100 ));
  } 
}

谢谢

4

4 回答 4

19

这是一个老问题,但对于那些仍然关心的人来说,禁用JTextArea它并不是很有帮助,主要是因为前景的灰色。最好的办法是取消荧光笔:

setHighlighter(null)
于 2013-01-17T16:36:05.610 回答
4

如果您不想JTextArea选择,那么最简单的方法就是禁用它:

setEnabled(false);
于 2012-09-22T20:16:22.510 回答
3

首先,我知道这是一个很老的帖子,但我真的不得不回答,因为我有同样的问题并找到了答案,而且给出的答案不是 100%。

Stelios 说我们设置了猫,setHighlighter(null);但它仍然是可选的,我们甚至可以复制粘贴。而且没有必要setEnabled(false);,尤其是当外观和感觉很糟糕的时候

我找到的答案很简单。

jtextPane.setEditable( false );
jtextPane.getCaret().deinstall( jtextPane );
于 2016-10-04T09:22:34.910 回答
-3

设置文本区域的文本时,将取消选择所有文本。像这样的东西:

Thread t = new Thread(new Runnable() {
    while (true) {
        textArea.setText(textArea.getText());
    }
});
t.start();
于 2016-12-26T16:46:24.807 回答