2013-01-12 34 views
0

我有一個JTextArea,並希望有一個按鈕,單擊時會將JTextArea的全部內容複製到System剪貼板,以便我可以在任何其他程序中執行Ctrl-V。我試過這個,但沒有運氣。這裏是我試過的東西的例子:如何將字符串複製到java中的系統剪貼板?

StringSelection stringSelection = new StringSelection("This is a clipping"); 
Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); 
clipboard.setContents(stringSelection, null); 
+3

發生了什麼事?它是否拋出異常?它是否用空白字符串替換剪貼板?它沒有對剪貼板做任何事嗎? – Doorknob

+0

它根本沒有對剪貼板做任何事情。 – MagicGuy52

回答

5

ClipBoard需要複製操作才能生效ClipboardOwner。此接口通常是由當前的「粘貼」類實現:

clipboard.setContents(stringSelection, myClipboardOwner); 

Example

+0

當我運行鏈接的示例程序時,我看到輸出是正確的,因爲它輸出了它放入剪貼板的內容,但是如果我粘貼chrome,例如「blah blah blah」不在剪貼板中。 – MagicGuy52

+0

你是什麼意思粘貼到Chrome,粘貼到URL字段?我想你正在運行Windows? – Reimeus

+0

是的,進入URL字段。我正在運行Linux Mint。 – MagicGuy52

相關問題