一个使用JAVA编写的类似按键精灵的程序

 import java.io.*;
import java.util.*;
import java.awt.*;
import java.awt.event.*;

/**
* 支持脚本文件的按键控制程序
*/
public class KeySprite{
public static void main(String[] args){
 String filename = "test.t";
 try{
  //读取配置文件
  Vector v = readFile(filename);
  //执行文件
  parseVector(v);
 
 }catch(IOException e){
  System.out.println("配置文件错误");
 }catch(Exception e){
  System.out.println("其他错误");
 }
}
/**
 * 读取文件到Vector中
 * @param filepath 文件路径
 */
public static Vector readFile(String filepath) throws IOException{
  Vector v = new Vector();
 
  //文件缓冲输入流
  BufferedReader br = new BufferedReader(
        new InputStreamReader(
         new FileInputStream(filepath)));
  //读取数据
  String s = br.readLine();
  while(s != null){
   //添加到v
   v.add(s);
   //读取下一行
   s = br.readLine();
  }
  //关闭输入流
  br.close();
  //返回数据
  return v;
}

/**
 * 解析读到的Vector,并执行对应的操作
 * @param v Vector对象
 */
public static void parseVector(Vector v){
 int size = v.size();
 
 try{
  //创建Robot对象
  Robot r = new Robot();
 
  for(int i = 0;i < size;i++){
   String s = (String)v.get(i);
   //分解
   String[] data = s.split(" ");
   //解析执行
   if(data[0].equals("移动")){
    //获得坐标
    int x = Integer.parseInt(data[1]);
    int y = Integer.parseInt(data[2]);
    //移动
    r.mouseMove(x,y);
   }else if(data[0].equals("按键")){
    //获得按键种类
    char c = data[1].toLowerCase().charAt(0);
    //按键
    r.keyPress(c);
    //释放
    r.keyRelease(c);
   }else if(data[0].equals("暂停")){
    //获得暂停时间
    int time = Integer.parseInt(data[1]);
    //暂停
    Thread.sleep(time);
   }
  }
 }catch(Exception e){
  e.printStackTrace();
 }
}

}



脚本文件test.t

暂停 1000
移动 200 300
暂停 1000
移动 210 300
暂停 1000
移动 220 300
暂停 1000
移动 230 300
暂停 1000
移动 240 300
暂停 1000
移动 250 300
暂停 1000
移动 260 300
暂停 1000
移动 270 300
暂停 1000
移动 280 300
暂停 1000
移动 290 300
暂停 1000
移动 300 300
暂停 1000
移动 310 300
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果您下载了本程序,但是该程序存在问题无法运行,那么您可以选择退款或者寻求我们的帮助(如果找我们帮助的话,是需要追加额外费用的)。另外,您不会使用资源的话(这种情况不支持退款),也可以找我们帮助(需要追加额外费用) 随着移动互联网技术的发展和用户需求的变化,【小程序名称】应运而生,以其轻量化、便捷化的设计理念为用户提供了一种全新的服务模式。作为一款无需下载安装即可使用的应用,【小程序名称】依托于微信庞大的生态系统,让用户在微信内就能轻松实现各种功能操作。 【小程序名称】的核心功能主要集中在【具体服务领域】,例如在线购物、本地生活服务、教育学习或健康管理等。它简化了传统APP繁琐的注册登录流程,支持微信一键授权登录,极大地提升了用户体验。用户通过搜索或扫描二维码,瞬间即可开启使用,享受快速加载、流畅运行的服务。 该小程序界面设计简洁明了,布局合理,易于上手。同时,其特色功能如实时更新的信息推送、个性化推荐以及社交分享功能,让用户能够及时获取所需信息,并方便地将优质内容分享至朋友圈或好友,实现信息的高效传播与互动。 【小程序名称】注重数据安全与隐私保护,严格遵守国家法律法规和微信平台的规定,确保用户数据的安全无虞。此外,其背后的开发团队持续迭代更新,根据用户反馈不断优化产品性能,提升服务质量,致力于打造一个贴近用户需求、充满活力的小程序生态。 总结来说,【小程序名称】凭借其小巧便携、快捷高效的特性,不仅节省了用户的手机存储空间,更为用户提供了无缝衔接的便利服务,是现代生活中不可或缺的一部分,真正实现了“触手可及”的智能生活新体验。只需轻点屏幕,无限精彩尽在掌握之中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值