java模拟键盘按键

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情


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


功能描述:

1.打开一个记事本

2.最大化

3.模拟按键操作


现 贴出 源码 :

001import java.awt.AWTException;
002import java.awt.Robot;
003import java.awt.Toolkit;
004import java.awt.datatransfer.Clipboard;
005import java.awt.datatransfer.StringSelection;
006import java.awt.datatransfer.Transferable;
007import java.awt.event.KeyEvent;
008 
009public 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_Java通过JNA调用WinRing0实现驱动级模拟按键 package me.kagura;import com.sun.jna.Library;import com.sun.jna.Native;import com.sun.jna.Platform;import com.sun.jna.Pointer;import com.sun.jna.ptr.PointerByReference;import java.util.HashMap;import ... 阅读详情

相关推荐

java 驱动级模拟键盘,纯Java实现跨平台鼠标键盘模拟、找图找色,Java按键精灵...

/*** 鼠标、键盘、延迟等基本操作*/public static void simple(){Robot robot = new Robot();robot.delay(1000); //延迟等待1秒robot.mouseRightClick(400, 400);//点击鼠标右键robot.delay(300); //延迟等待0.3秒robot.mouseLeftClick(400, 400);...

weixin_39685459的博客 1078

java实现虚拟键盘

java 实现虚拟键盘 按下键盘会有颜色变化

Java模拟键盘和鼠标操作

Java编程中,我们经常需要模拟键盘和鼠标的操作,例如自动化测试、模拟用户交互等。本文将介绍如何使用Java代码模拟键盘和鼠标的操作。除了模拟单个按键之外,我们还可以通过组合键来模拟复杂的键盘操作。类,我们可以方便地模拟键盘和鼠标的操作。无论是模拟简单的按键操作,还是模拟复杂的组合键操作,都可以通过。请记住,在模拟键盘和鼠标操作时,要谨慎使用,确保操作的合法性和安全性。方法模拟释放键盘上的’A’键。方法模拟按下键盘上的’A’键,接着使用。方法模拟按下Ctrl键,接着使用。方法模拟按下C键,然后分别使用。

TechWhiz的博客 432

java仿真模拟键盘输入

java仿真模拟键盘输入源代码,涉及模拟仿真键盘输入的程序都可以用

Java实现键盘按键点击效果

java控制键盘

qq_42244033的博客 2863

Java如何模拟鼠标键盘输入

Java提供里Robot类与KeyEvent类实现模拟键盘输入 private static void aut_mobs() { // 创建Robot对象 Robot robot = null; try { robot = new Robot(); } catch (AWTException e) { e.printStackTrace(); } //判断是否null if(robot == nul

别人笑我太疯癫,我笑他人看不穿。 5641

java按键模拟_java模拟键盘按键

import java.awt.AWTException;import java.awt.Robot;import java.awt.Toolkit;import java.awt.datatransfer.Clipboard;import java.awt.datatransfer.StringSelection;import java.awt.datatransfer.Transferable...

weixin_39938875的博客 1824

Java Robot 类模拟键盘按键和鼠标点击(全局模拟

Java Robot 类模拟键盘按键和鼠标点击(全局模拟) 733人浏览 /0人评论 转自:http://blog.csdn.net/foreverdwyw/article/details/52326458 参考:http://blog.csdn.net/zhengyikuangge/article/details/71101683 转自:https://blog.csdn.net/zp357252539/article/details/79074933 Robot类用于为测试自动化、自运行演示.

xiaoerbuyu1233的博客 777

java Robot 类模拟键盘按键和鼠标点击(全局模拟

java Robot 类模拟键盘按键和鼠标点击(全局模拟

xingjiarong的专栏 1万+

java 按键框架_Java+Selenium框架:Keys类模拟键盘按键事件操作web

Java+Selenium框架:模拟键盘按键事件,主要是讲模拟键盘的组合键操作。@Ignore@Testpublic void test() {driver.get(Constants.yahooUrl);driver.findElement(By.id("uh-signin")).click();driver.findElement(By.id("login-username")).sendKe...

weixin_36443680的博客 598

Java下使用Robot模拟键盘按键、鼠标单击、坐标颜色获取

Java下的Robot类可以方便模拟人工键盘按键,鼠标定位并且模拟单击,以及屏幕坐标位置颜色的获取,大家可以扩展思路开发你所需要的功能。

文都龙哥 957

Java+Selenium框架:Keys类模拟键盘按键事件操作web

在自动化测试过程中,模拟键盘按键事件是一个常见的需求。Selenium WebDriver 提供了 Keys 类,该类包含了所有可能的键盘按键值。通过 Keys 类,你可以在测试过程中模拟按下或释放键盘上的各种键,从而实现更复杂的交互操作。

我先测了 4328

JAVA模拟键盘按键测试类

package src;import java.awt.Robot;import java.awt.event.KeyEvent;public class KeyPressTest {  public static void main(String[] args) {  Robot robot = null;  try {   robot = new Robot();   robot.keyP

net_jun的专栏 1794

java模拟键盘、鼠标按键打开QQ

Robot r = new Robot(); System.out.println("按windows键"); Thread.sleep(2000L); r.keyPress(KeyEvent.VK_WINDOWS); r.keyRelease(KeyEvent.VK_WINDOWS); System.out.println("鼠标移动"); ...

SJZYLC的专栏 893

java 鼠标精灵_纯Java实现跨平台鼠标键盘模拟、找图找色,Java按键精灵

由原本的Java使用JNI调用dll实现模拟辅助操作,升级到纯Java来实现,最新:https://github.com/xnx3/xnx3/*** 鼠标、键盘、延迟等基本操作*/public static void simple(){Robot robot = new Robot();robot.delay(1000); //延迟等待1秒robot.mouseRightClick(400, ...

weixin_30376627的博客 633
上一篇: android Button基础
下一篇: java驱动鼠标键盘
zm_21
博客等级 码龄14年 147粉丝 73原创
评论 6
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值