come from: http://bbs.51cto.com/thread-1097189-1.html

功能描述:

1.打开一个记事本

2.最大化

3.模拟按键操作

现 贴出 源码 :

预览源代码 打印
001 import java.awt.AWTException;
002 import java.awt.Robot;
003 import java.awt.Toolkit;
004 import java.awt.datatransfer.Clipboard;
005 import java.awt.datatransfer.StringSelection;
006 import java.awt.datatransfer.Transferable;
007 import java.awt.event.KeyEvent;
008  
009 public class Test {
010  
011         /**
012          * @param args
013          * <a href="http://home.51cto.com/index.php?s=/space/2305405" target="_blank">@throws</a> AWTException
014          */
015         public static void main(String[] args) throws Exception {
016                 // TODO Auto-generated method stub
017                 Robot robot = new Robot(); //创建一个robot对象
018                 Runtime.getRuntime().exec("notepad");        //打开一个记事本程序
019                 robot.delay(2000);        //等待 2秒
020                 //窗口最大化
021                 keyPressWithAlt(robot, KeyEvent.VK_SPACE); //按下 alt+ 空格
022                 keyPress(robot, KeyEvent.VK_X);  //按下x键
023                 robot.delay(1000);  //等待 1秒
024                 keyPressString(robot, "大家好,我是一个小机器人,我有很多本领呢 !"); //输入字符串
025                 robot.delay(3000);  //等待 3秒
026                 keyPress(robot, KeyEvent.VK_ENTER); // 按下 enter 换行
027                 keyPressString(robot, "现在,我就向大家展示一下.....嘻嘻"); //输入字符串
028                 robot.delay(3000);  //等待 3秒
029                 keyPress(robot, KeyEvent.VK_ENTER); // 按下 enter 换行
030                 keyPressString(robot, "首先,我能按下 键盘的任何一个键。下面,我单独按下a,b,c,d键"); //输入字符串
031                 keyPress(robot, KeyEvent.VK_ENTER); // 按下 enter 换行
032                 robot.delay(3000);  //等待 3秒
033                 keyPress(robot, KeyEvent.VK_A); //按下 a 键
034                 robot.delay(2000);  //等待 2秒
035                 keyPress(robot, KeyEvent.VK_B); //按下 b 键
036                 robot.delay(2000);  //等待 2秒
037                 keyPress(robot, KeyEvent.VK_C); //按下 c 键
038                 robot.delay(2000);  //等待 2秒
039                 keyPress(robot, KeyEvent.VK_D); //按下 d 键
040                 robot.delay(2000);  //等待 2秒
041                 keyPress(robot, KeyEvent.VK_ENTER); // 按下 enter 换行
042                 keyPressString(robot, "呵呵,完成了。。。。  ");
043                 robot.delay(3000);  //等待 3秒
044                 keyPress(robot, KeyEvent.VK_ENTER); // 按下 enter 换行
045                 keyPressString(robot, "恩,对了    上面 文字很多  是不是 感到 很乱呢???     我现在 帮你清空一下 ");
046                 robot.delay(2000);  //等待 2秒
047                 keyPressWithCtrl(robot,KeyEvent.VK_A); //按下 ctrl+A 全选
048                 robot.delay(2000);  //等待 2秒
049                 keyPress(robot,KeyEvent.VK_DELETE); //清除
050                 robot.delay(3000);  //等待 3秒
051                 keyPressString(robot, "恩,现在 是不是 觉得 清爽多了              另外 我还会按 组合键呢 ...");
052                 keyPress(robot, KeyEvent.VK_ENTER); // 按下 enter 换行
053                 robot.delay(3000);  //等待 3秒
054                 keyPressString(robot, "................好像已经 演示过了 吧 ,呵呵    ");
055                 keyPress(robot, KeyEvent.VK_ENTER); // 按下 enter 换行
056                 robot.delay(3000);  //等待 3秒
057                 keyPressString(robot, "其实,我还有很多本领呢                           现在就不向大家展示了 .....");
058                 keyPress(robot, KeyEvent.VK_ENTER); // 按下 enter 换行
059                 robot.delay(3000);  //等待 3秒
060                 keyPressString(robot, "谢谢大家!!!!!");
061                  
062                  
063  
064         }
065  
066         // shift+ 按键
067         public static void keyPressWithShift(Robot r, int key) {
068                 r.keyPress(KeyEvent.VK_SHIFT);
069                 r.keyPress(key);
070                 r.keyRelease(key);
071                 r.keyRelease(KeyEvent.VK_SHIFT);
072                 r.delay(100);
073         }
074  
075         // ctrl+ 按键
076         public static void keyPressWithCtrl(Robot r, int key) {
077                 r.keyPress(KeyEvent.VK_CONTROL);
078                 r.keyPress(key);
079                 r.keyRelease(key);
080                 r.keyRelease(KeyEvent.VK_CONTROL);
081                 r.delay(100);
082         }
083  
084         // alt+ 按键
085         public static void keyPressWithAlt(Robot r, int key) {
086                 r.keyPress(KeyEvent.VK_ALT);
087                 r.keyPress(key);
088                 r.keyRelease(key);
089                 r.keyRelease(KeyEvent.VK_ALT);
090                 r.delay(100);
091         }
092         //打印出字符串
093         public static void keyPressString(Robot r, String str){
094                 Clipboard clip = Toolkit.getDefaultToolkit().getSystemClipboard();//获取剪切板
095                 Transferable tText = new StringSelection(str);
096                 clip.setContents(tText, null); //设置剪切板内容
097                 keyPressWithCtrl(r, KeyEvent.VK_V);//粘贴
098                 r.delay(100);
099         }
100          
101         //单个 按键
102         public static void keyPress(Robot r,int key){
103                 r.keyPress(key);
104                 r.keyRelease(key);
105                 r.delay(100);
106         }
107 }

java模拟键盘按键相关推荐

  1. java整理软件---java模拟键盘,鼠标操作

    1.Java 模拟键盘输入的小Demo,实现自动按下:模拟Ctrl+Alt+Z的按下和抬起    如果你开着qq的话,那么qq会自动弹出来.哈哈,代替人工操作; import java.awt.Rob ...

  2. C/C++使用keybd_event模拟键盘按键

    1 #include <stdio.h> 2 #include <Windows.h> 3 4 /* 5 设置键盘大小写状态 6 big:为TRUE则切换大写状态,否则切换小写 ...

  3. python调用linux软键盘_在Linux中使用Python模拟键盘按键

    之前在做自动化测试中需要用Python在linux中模拟Ctrl+V 进行路径粘贴,试了很多种方法,起初用了xerox和pyperclip这两个python库,但打开对话框后调用粘贴API无法进行粘贴 ...

  4. VC+API模拟键盘按键(详解篇)

    模拟键盘按键 ━━━━━━━━━━━━━━━━━━━━━━━━ 以前就想过如何模拟键盘按键向其他程序发送控制命令,但总是无功而返,这次也不例外. 模拟按键的方法很多,如PostMessage(不能用S ...

  5. linux c实现键盘模拟,C++模拟键盘按键的实例

    这个与模拟鼠标点击的函数差不多,直接上函数 keybd_event(VK_RETURN,0,0,0); keybd_event(VK_RETURN,0,KEYEVENTF_KEYUP,0); 这是模拟 ...

  6. 模拟键盘按键 自动输入文字

    模拟键盘按键 自动输入文字 键盘对于每个操作电脑的人员来说是最熟悉不过的了.键盘上的按键可分为两类 按下后会在电脑的输入窗口上出现对应字符的按键,如字母键和数字键等,我们称之为字符键:按下后虽然看不到 ...

  7. python 模拟键盘 linux,在Linux中使用Python模拟键盘按键,linuxpython

    在Linux中使用Python模拟键盘按键,linuxpython 之前在做自动化测试中需要用Python在linux中模拟Ctrl+V 进行路径粘贴,试了很多种方法,起初用了xerox和pyperc ...

  8. 驱动中实现模拟键盘按键

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 标 题: ...

  9. 模拟键盘按键、鼠标单击功能发布(可发送快捷键、热键、鼠标左键多次单击)—— 定时执行专家

    目录 ◆ 定时执行专家 -- 模拟键盘按键 ◆ 定时执行专家 -- 模拟鼠标单击 ◆ 定时执行专家 -- 模拟键盘按键 - 设置方法 (1)点击 "定时执行专家" 工具栏 &quo ...

最新文章

  1. hung-yi lee_p18_图神经网络(cont.)
  2. Java new关键字和newInstance()方法的区别
  3. linux清除硬盘,linux下清除硬盘的几种方法
  4. python字符串encode()decode()
  5. 帝国的黄昏:SQL是世界上最牛逼的语言
  6. python偏最小二乘法公式,python3 偏最小二乘法实现
  7. 北京爷们儿跟北京妞儿 倍儿靠谱儿-----女人篇
  8. mysql数据库 with as用法
  9. 山东大学软件学院项目实训-创新实训-山大软院网络攻防靶场实验平台(三)
  10. CodeForces - 1324D Pair of Topics(二分或双指针)
  11. HTML边框圆角椭圆原理,CSS3教程:border-radius你以为就是个圆角边框吗?
  12. 赏析:滕王阁序(唐代:王勃)
  13. android顶部按钮图片,安卓动态改变button顶部图片即drawableTop属性
  14. 【线代NumPy】第八章 - 特征值和特征向量 | Eigenvalue and Eigenvector | 简述并提供代码
  15. 数据库空间管理-学习笔记
  16. R语言 | 二分类和多分类的逻辑回归实现
  17. 进化算法--遗传算法
  18. MiFlash提示“错误代码”为“0xffffffff”
  19. i5 12600kf和i5 10400f 选哪个
  20. 为什么iPhone拍照更好看

热门文章

  1. hbase2.1.6 mr
  2. vr线上虚拟展馆H5三维购物带的便利【商迪3D】与您细说
  3. 3D角色硬表面建模技巧与思路分享
  4. P1293 班级聚会
  5. [附源码]Python计算机毕业设计超市商品管理系统
  6. [python]一个特别好的学习python网站
  7. 【Python免费网站】2021学习python 5个绝佳的网站,新手小白再也不怕学不会!
  8. win10查看电池损耗:生成损耗报告
  9. android 乐固渠道打包,安卓腾讯乐固(legutools)多渠道打包(友盟)
  10. DDSM数据库在windows环境下的转换