java 键盘模拟

来源:互联网 发布:全球网络攻击 编辑:程序博客网 时间:2024/04/28 17:37

package qq;
import java.awt.AWTException;
import java.awt.Image;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.Transferable;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.awt.event.KeyEvent;
import java.io.IOException;

public class ok {
 public String test() {
  Robot r = null;
  try {
   r = new Robot();
  } catch (AWTException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  r.keyPress(KeyEvent.VK_ALT);
  r.keyPress(KeyEvent.VK_TAB);
  r.keyRelease(KeyEvent.VK_TAB);
  r.keyRelease(KeyEvent.VK_ALT);
  return null;
 }

 public static void main(String args[]) {
  new ok().test();
 }
 
 
 
 //本地剪切板使用 Clipborad cp = new Clipboard("clip1"); 来构造;
 //系统剪切板通过 Clipboard sysc = Toolkit.getDefaultToolkit().getSystemClipboard();

 
 protected static String getClipboardText(Clipboard clip) throws Exception{
  // 获取剪切板中的内容
  Transferable clipT = clip.getContents(null);
  if (clipT != null) {
  // 检查内容是否是文本类型
  if (clipT.isDataFlavorSupported(DataFlavor.stringFlavor))
  return (String)clipT.getTransferData(DataFlavor.stringFlavor);
  }
  return null;
  }

 

  protected static void setClipboardText(Clipboard clip, String writeMe) {
  Transferable tText = new StringSelection(writeMe);
  clip.setContents(tText, null);
  }

 

  public static Image getImageFromClipboard() throws Exception{
  Clipboard sysc = Toolkit.getDefaultToolkit().getSystemClipboard();
  Transferable cc = sysc.getContents(null);
  if (cc == null)
  return null;
  else if(cc.isDataFlavorSupported(DataFlavor.imageFlavor))
  return (Image)cc.getTransferData(DataFlavor.imageFlavor);
  return null;
  }

 


  protected static void setClipboardImage2(final Image image) {
  Transferable trans = new Transferable(){
  public DataFlavor[] getTransferDataFlavors() {
  return new DataFlavor[] { DataFlavor.imageFlavor };
  }
  public boolean isDataFlavorSupported(DataFlavor flavor) {
  return DataFlavor.imageFlavor.equals(flavor);
  }
  public Object getTransferData(DataFlavor flavor) throws UnsupportedFlavorException, IOException {
  if(isDataFlavorSupported(flavor))
  return image;
  throw new UnsupportedFlavorException(flavor);
  }

  };
  Toolkit.getDefaultToolkit().getSystemClipboard().setContents(trans, null);
  }


}

原创粉丝点击