⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 clipboardframe.java

📁 Java灵感编程1-101之21-40
💻 JAVA
字号:
package clipboard;import java.awt.*;import java.awt.event.*;import javax.swing.*;//声明使用剪贴板工具import java.awt.datatransfer.*;/** * <p>Title: ClipBoard Demo</p> * <p>Description: This is a ClipBoard demo</p> * <p>Copyright: Copyright (c) 2002</p> * <p>Company: d6-125</p> * @author Liujun * @version 1.0 */public class ClipBoardFrame extends JFrame {  JPanel contentPane;  BorderLayout borderLayout1 = new BorderLayout();  JPanel jPanel1 = new JPanel();  JButton jButton1 = new JButton();  JButton jButton2 = new JButton();  JButton jButton3 = new JButton();  JScrollPane jScrollPane1 = new JScrollPane();  JTextArea jTextArea1 = new JTextArea();  //声明剪贴板变量clipboard,并初始化  Clipboard clipboard = getToolkit().getSystemClipboard();  //Construct the frame  public ClipBoardFrame() {    enableEvents(AWTEvent.WINDOW_EVENT_MASK);    try {      jbInit();    }    catch(Exception e) {      e.printStackTrace();    }  }  //Component initialization  private void jbInit() throws Exception  {    //setIconImage(Toolkit.getDefaultToolkit().createImage(ClipBoardFrame.class.getResource("[Your Icon]")));    contentPane = (JPanel) this.getContentPane();    contentPane.setLayout(borderLayout1);    this.setSize(new Dimension(400, 300));    this.setTitle("ClipBoard Frame Demo");    jButton1.setText("剪切");    jButton1.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        jButton1_actionPerformed(e);      }    });    jButton2.setText("复制");    jButton2.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        jButton2_actionPerformed(e);      }    });    jButton3.setText("粘贴");    jButton3.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        jButton3_actionPerformed(e);      }    });    contentPane.add(jPanel1, BorderLayout.NORTH);    jPanel1.add(jButton1, null);    jPanel1.add(jButton2, null);    jPanel1.add(jButton3, null);    contentPane.add(jScrollPane1, BorderLayout.CENTER);    jScrollPane1.getViewport().add(jTextArea1, null);  }  //Overridden so we can exit when window is closed  protected void processWindowEvent(WindowEvent e) {    super.processWindowEvent(e);    if (e.getID() == WindowEvent.WINDOW_CLOSING) {      System.exit(0);    }  }  void jButton1_actionPerformed(ActionEvent e) {    //剪切选中的文本    String srcData = jTextArea1.getSelectedText();//得到选中的文本    jTextArea1.cut();//剪切文本    if (srcData != null) {      StringSelection contents = new StringSelection(srcData);      clipboard.setContents(contents, null);//将得到的文本送入剪贴板    }  }  void jButton2_actionPerformed(ActionEvent e) {   //复制选中的文本    String srcData = jTextArea1.getSelectedText();//得到选中的文本    if (srcData != null) {      StringSelection contents = new StringSelection(srcData);      clipboard.setContents(contents,null);//将得到的文本送入剪贴板    }  }  void jButton3_actionPerformed(ActionEvent e) {     Transferable content = clipboard.getContents(jTextArea1);//从剪贴板中取数据    int insertPos = jTextArea1.getCaretPosition();// 得到文本框的当前位置    if (content != null) {      try {        String dstData = (String)content.getTransferData(DataFlavor.stringFlavor);//转换数据为文本	jTextArea1.insert(dstData,insertPos);//插入文本到当前位置      } catch (Exception ei) {	  System.out.println("Couldn't get contents in format: "+	  DataFlavor.stringFlavor.getHumanPresentableName());//若剪贴板中不是文本则打印出错	  }    }  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -