以下代码是真的吗?在记事本java应用程序中复制文本?

时间:2014-04-02 07:24:11

标签: java notepad

我正在使用NetBeans在Java中创建记事本应用程序!复制文本的事件如下:但它显示有关' .setContents'的错误。表示"找不到符号" 我试图删除错误,但无法解决..

import java.awt.FileDialog; 
import java.awt.datatransfer.DataFlavor; 
import java.awt.datatransfer.StringSelection; 
import java.awt.datatransfer.Transferable; 
import java.awt.datatransfer.UnsupportedFlavorException; 
import java.io.BufferedReader; 
import java.io.DataOutputStream; 
import java.io.FileOutputStream; 
import java.io.FileReader; 
import java.io.IOException; 
import java.io.StringReader; 
import javax.swing.JOptionPane;

private void CopyActionPerformed(java.awt.event.ActionEvent evt) {
    String sel=TextArea.getSelectedText();
    StringSelection clipString=new StringSelection(sel);
    TextArea.setContents(clipString,clipString); 
}

3 个答案:

答案 0 :(得分:0)

您需要初始化TextArea变量。请查看this以获取进一步参考。

答案 1 :(得分:0)

此错误可能意味着您需要导入StringSelection或TextArea,具体取决于它无法找到的符号。该错误有点模糊,因为它抱怨TextArea上的方法调用,但编译器可能无法理解您的代码。

此外,您似乎正在尝试静态调用TextArea上应该在实例上调用的方法,但在修复导入之前,您可能无法看到编译错误。

答案 2 :(得分:0)

你总是可以这样做。

private void CopyActionPerformed(java.awt.event.ActionEvent evt) {
    String sel=TextArea.getSelectedText();

您可以使用复制的文本替换TextArea内容,也可以在TextArea的内容之后添加复制的文本。

    // if you want to replace the contents of the TextArea with the copied text
    TextArea.setText(sel);

    //if you want to add the copied text to the end of the text in the TextArea
    TextArea.append(sel);
}