`
xiewanzhi
  • 浏览: 160279 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JTextPane剪贴板的操作

 
阅读更多

选中所有文本:

//先获取焦点,否则选择的文本不会设为选中状态
msgShowTxtPane.requestFocus();
//选择全部内容
msgShowTxtPane.select(0, msgShowTxtPane.getDocument().getLength());

复制文本到剪贴板:

String selectedTxt = msgShowTxtPane.getSelectedText();
//将选择的内容写入剪切板
StringSelection ss = new StringSelection(selectedTxt);   
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(ss, null);

剪切文本到剪贴板:

// 获取需要剪切的文本
String temp = msgInputTxtPane.getSelectedText();
StringSelection text = new StringSelection(temp);
//放入剪贴板
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(text, null);
//替换选择的文本
msgInputTxtPane.replaceSelection("");

  

获取剪贴板的文本:

//获取剪切板内容,如果没有则返回null
Transferable t = Toolkit.getDefaultToolkit().getSystemClipboard().getContents(null);   
if (t != null && t.isDataFlavorSupported(DataFlavor.stringFlavor)) {   
    String text = "";
	try {
		text = (String)t.getTransferData(DataFlavor.stringFlavor);
	} catch (Exception e1) {
		e1.printStackTrace();
	}   
	StyledDocument doc = msgInputTxtPane.getStyledDocument();
	SimpleAttributeSet arrSet = new SimpleAttributeSet();
	try {
		doc.insertString(doc.getLength(), text, arrSet);
	} catch (BadLocationException e1) {
		e1.printStackTrace();
	}
}

 

分享到:
评论

相关推荐

    MyTextPane.rar_MyTextPane

    基本的粘贴复制功能意味着该组件至少实现了常见的剪贴板操作,允许用户通过右键菜单或快捷键来复制和粘贴文本。 在Java中,实现这样的功能可能涉及到以下关键知识点: 1. **Swing库**:Java Swing是Java ...

    通用源代码编辑器JAVA大作业报告.doc

    这个编辑器旨在提供基础的源代码编辑功能,例如文件打开、编辑和保存,同时也具备了一些高级特性,如语法高亮、剪贴板操作、搜索定位和替换功能,以及二进制文件的编辑。 在【需求分析】部分,任务明确了基本需求和...

    MyTextPane.zip_简易记事本

    5. **剪贴板操作**:通过`javax.swing.ImageIcon`和`java.awt.Toolkit`,可以实现剪贴板的复制、粘贴和剪切功能。 6. **撤销/重做机制**:这通常涉及到维护一个操作历史栈,每次用户进行编辑操作时,都会将状态推入...

    用Java设计文本编辑器MiniEditor

    4. **剪贴板操作**: 复制、粘贴和剪切功能需要与系统剪贴板进行交互。Java的Clipboard类提供这样的功能,我们需要学习如何使用它来获取和设置剪贴板内容。 5. **查找和替换**: 这涉及到对文本的搜索算法,如KMP或者...

    java-jishiben.rar_java 记事本_记事本java

    8. **剪贴板操作**:Java的`Clipboard`接口和`System Clipboard`类允许程序访问系统的剪贴板,实现复制、粘贴和剪切功能。 9. **异常处理**:在处理文件I/O操作时,为了确保程序的健壮性,通常会使用try-catch语句...

    Java文本文档编辑器

    6. **剪贴板操作**: Java的`java.awt.datatransfer`包提供了Clipboard类,使得应用程序能够与系统剪贴板进行交互,支持复制、剪切和粘贴功能。 7. **多线程**: 在某些情况下,如大文件读写或长时间操作,可能需要...

    java 记事本

    在记事本中,用户输入的文本会被显示在其中,且可能支持剪贴板操作(复制、粘贴)。 5. **对话框**: 记事本可能会使用JOptionPane来显示警告、确认或者输入对话框。例如,当用户尝试关闭未保存的文档时,可能会弹出...

    这是个用java写的多功能记事本小程序

    5. **剪贴板集成**:与系统剪贴板交互,允许复制和粘贴文本。Java的`Clipboard`接口和`System Clipboard`可实现此功能。 6. **菜单和快捷键**:提供标准的菜单栏和快捷键,方便用户操作。Swing库的`JMenuBar`和`...

    java简单记事本

    此外,JTextComponent还提供了copy、cut和paste的方法,用于实现剪贴板操作,这是通过Swing的Clipboard接口实现的。 在事件处理方面,Java Swing使用事件监听器模式。例如,当用户点击“保存”按钮或选择菜单项时,...

    java做的多功能记事本

    复制和粘贴功能是通过Java的剪贴板机制实现的。Java的Clipboard类提供了一种在应用程序之间共享数据的方式,用户可以轻松地复制文本并将其粘贴到其他地方,或者从其他地方复制文本到记事本中。此外,可能还利用了...

    java编写的记事本

    通过获取或设置系统剪贴板的内容,可以实现文本的复制和粘贴功能。 4. **全选**:在Java Swing或JavaFX中,可以调用`JTextComponent.selectAll()`方法来选中文本框内的所有内容,方便用户进行整体操作。 5. **查找...

    2022如何使用记事本编写java程序.docx

    5. **复制/粘贴**:利用Java的剪贴板API(Clipboard)实现文本的复制和粘贴。 6. **退出记事本**:关闭程序窗口,可能需要处理资源释放。 ### 五、代码实现 在实际代码中,会看到如`JMenuItem`、`JFileChooser`、`...

    Notepad.rar

    - **复制与粘贴**:利用`Clipboard`类和`TransferHandler`来实现剪贴板的功能,允许用户复制文本并在不同地方粘贴。 - **撤销与重做**:通过维护一个操作历史栈,每次编辑操作都添加到栈中,用户可以选择撤销或...

    JTextComponent.rar_Applet_Java_

    5. **剪贴板支持**:`JTextComponent`内置了对系统剪贴板的支持,可以方便地进行复制、粘贴和剪切操作。 6. **选择和查找**:用户可以选择文本部分,并能进行查找和替换操作。 7. **可扩展性**:`JTextComponent`...

    java_bianyiqi.rar_编辑器/阅读器_Java_

    在Java环境下,实现这样的功能通常涉及`String`对象的处理和`Clipboard`类的使用,以便在程序内部和系统剪贴板之间交换数据。 2. **字体设置**:编辑器还允许用户对字体进行个性化设置,包括字体类型、大小、颜色和...

    疯狂JAVA讲义

    第1章 Java概述 1 1.1 Java语言的发展简史 2 1.2 Java的竞争对手及各自优势 4 1.2.1 C#简介和优势 4 1.2.2 Ruby简介和优势 4 1.2.3 Python的简介和优势 5 ...11.9 剪贴板 432 11.9.1 数据传递的类...

Global site tag (gtag.js) - Google Analytics