文本突出显示存储在哪里?

时间:2013-01-02 11:29:37

标签: java clipboard

我需要创建一个复制突出显示文本的应用程序。

我试过这个程序

String myString = "This text will be copied into clipboard when running this code!";
StringSelection stringSelection = new StringSelection (myString);
Clipboard clpbrd = Toolkit.getDefaultToolkit ().getSystemClipboard ();
clpbrd.setContents (stringSelection, null);

但这会复制已存在于剪贴板中的文本 在我们突出显示文本并点击复制选项

后,它会从剪贴板中打印文本

我想知道我们只是通过突出显示选择文本,存储在哪里,如何直接访问此突出显示的文本而无需通过操作系统的复制选项进行物理复制

1 个答案:

答案 0 :(得分:1)

您可以使用CaretListener收听选择更改。然后,您可以使用#getSelectedText()检索所选文本。

以下是TextArea的简单示例:

    final JTextArea textArea = new JTextArea();
    textArea.addCaretListener(new CaretListener() {
        @Override
        public void caretUpdate(CaretEvent e) {
            String selectedText = textArea.getSelectedText();
            // do something with it...
        }
    });