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

📄 clipboarddemo1.java

📁 java 完全探索的随书源码
💻 JAVA
字号:
// ClipboardDemo1.java

import java.awt.*;
import java.awt.datatransfer.*;
import java.awt.event.*;

import java.io.*;

class ClipboardDemo1 extends Frame
                     implements ActionListener, ItemListener
{
   TextArea ta;
   Checkbox cbFlavor;

   boolean useFlavor = true;

   ClipboardDemo1 (String title)
   {
      super (title);

      addWindowListener (new WindowAdapter ()
                         {
                             public void windowClosing (WindowEvent e)
                             {
                                System.exit (0);
                             }
                         });

      MenuBar mb = new MenuBar ();

      Menu file = new Menu ("File");
      file.add ("Exit");

      // An action listener is being assigned to
      // the entire menu instead of just a single
      // menu item because there is only one menu
      // item.  Swing does not support this ability.

      file.addActionListener (this);

      mb.add (file);

      Menu edit = new Menu ("Edit");
      edit.add ("Paste");

      // An action listener is being assigned to
      // the entire menu instead of just a single
      // menu item because there is only one menu
      // item.  Swing does not support this ability.

      edit.addActionListener (this);

      mb.add (edit);

      setMenuBar (mb);

      Panel p = new Panel ();
      CheckboxGroup cbg = new CheckboxGroup ();
      cbFlavor = new Checkbox ("Flavor", true, cbg);
      cbFlavor.addItemListener (this);
      p.add (cbFlavor);
      Checkbox cb = new Checkbox ("Text", false, cbg);
      cb.addItemListener (this);
      p.add (cb);

      add (p, BorderLayout.SOUTH);

      p = new Panel ();
      ta = new TextArea (10, 60);
      ta.setEditable (false);
      p.add (ta);

      add (p, BorderLayout.NORTH);

      pack ();

      setVisible (true);
   }

   public void actionPerformed (ActionEvent e)
   {
      if (e.getActionCommand ().equals ("Exit"))
          System.exit (0);

      // Paste is assumed.

      ta.setText ("");

      Toolkit tk = Toolkit.getDefaultToolkit ();
      Clipboard c = tk.getSystemClipboard ();

      Transferable t = c.getContents (this);
      if (t == null)
          return;

      String s = "";

      if (useFlavor)
      {
          DataFlavor [] df = t.getTransferDataFlavors ();

          for (int i = 0; i < df.length; i++)
               s = s + df [i].getHumanPresentableName () + " ("
                     + df [i].getMimeType () + ")\n";
      }
      else
          try
          {
              s = (String) t.getTransferData (DataFlavor.stringFlavor);
          }
          catch (IOException e2) {}
          catch (UnsupportedFlavorException e2) {}

      ta.setText (s);
   }

   public void itemStateChanged (ItemEvent e)
   {
      if (e.getItemSelectable () == cbFlavor)
          useFlavor = true;
      else
          useFlavor = false;
   }

   public static void main (String [] args)
   {
      new ClipboardDemo1 ("Clipboard Demo1");
   }
}

⌨️ 快捷键说明

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