我需要创建一个复制突出显示文本的应用程序。
我试过这个程序
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);
但这会复制已存在于剪贴板中的文本 在我们突出显示文本并点击复制选项
后,它会从剪贴板中打印文本我想知道我们只是通过突出显示选择文本,存储在哪里,如何直接访问此突出显示的文本而无需通过操作系统的复制选项进行物理复制
答案 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...
}
});