2009-11-30 36 views
0

如何在一個Swing應用程序單擊一個JButton,以便在文本字段一些文字可以被複制(而不是突出顯示文本,然後按Ctrl + C),然後在寫字板我可以單擊其中的粘貼按鈕以粘貼Java應用程序中的複製文本?如何從Java應用程序的文本複製到寫字板

回答

2

試試這個:

copyBtn = new JButton(new AbstractAction("copy"){ 
    public void actionPerformed(ActionEvent e){ 
     Clipboard system = Toolkit.getDefaultToolkit().getSystemClipboard(); 
     StringSelection sel = new StringSelection(myTextField.getText()); 
     system.setContents(sel, sel); 
    }  
}); 
+0

這是最好的,我只需要包括以下兩行: import java.awt.datatransfer.Clipboard; import java.awt.datatransfer.StringSelection; – Frank 2009-11-30 20:11:01

1

您需要將文本放在剪貼板上。 This article談論這個,所以它可能是你在找什麼。

1

通常這是通過添加菜單項到您的應用程序。

退房從Swing教程Text Component Features一節工作的例子,顯示了一種方式來做到這一點。

另一種方法是使用DefaultEditorKit.CopyAction。您可以創建Action,然後將其添加到菜單項或JButton或接受Action的任何組件。

Action copy = new DefaultEditorKit.CopyAction(); 
JButton button = new JButton(copy); 

當然,用戶仍然會選擇他們想要複製(但你的問題沒有說「一些文本」)的文本。

或者是你如何自動選擇所有文本的問題嗎?

+0

是,如何自動獲取文本到剪輯板? – Frank 2009-11-30 20:02:18

相關問題