android studio按键精灵,按键精灵要点讲解一 - godlike的个人页面 - OSCHINA - 中文开源技术交流社区...
按键精灵很强大,本人目前只关注关于网站数据录入方面,比如重复录入相同的数据时,这个软件很有用。
本次讲解采用的是2014版按键精灵。直接进入正题,先做一个简单的操作功能,如下:
一、通过上图所示,我要实现两个功能:
1,选中“张三丰”这三个字,然后按“Delete”键进行删除;
2,单击下拉菜单,选择“联系方式”查询。
直接新建一个空白脚本,编写代码:
'==========以下是按键精灵录制的内容==========
MoveTo 339, 251 '鼠标移动到x=339,y=251的位置
LeftDown 1 '左键按下
MoveTo 301, 251 '实现选择坐标点(339, 251)到点(301, 251)之间的文本
LeftUp 1 '释放左键
Delay 500 '延迟等待0.5秒
KeyDown "Delete", 1 '按下Delete键,删除上面选择的文本
Delay 115
KeyUp "Delete", 1 '释放Delete键
Delay 300
MoveTo 284, 251 '移动到下拉箭头处
LeftClick 1 '点击下拉箭头
Delay 2000
MoveTo 246, 485 '鼠标移动到要选择的下拉菜单选项
Delay 1000
LeftClick 1 '点击选择菜单选项
Delay 10000
上面代码的意思已进行了详细的标注(注释除了用',也可以使用//)。当然也可以通过可视化的界面进行观察,如下:
上面两张图实际上就是“修改脚本”时两种不同的界面,一种是直接编辑代码,一种是通过鼠标实现类似于VB的可视化编程效果。
3,尽管大多时候我们都用ctrl+c、ctrl+v来填充文本内容,但是极个别情况下,也可以采用SayString函数,如:
KeyDown "Delete", 1 '按下Delete键,删除上面选择的文本
Delay 115
KeyUp "Delete", 1'释放Delete键
//使用SayString函数,使用输入字符串
SayString "很不错"
我们在按Delete删除内容后,又在文本中输出了“很不错”这个三个字,这样的好处是可以节约按键时间,直接录入数据。
二,抓抓工具
上面的代码挺简单的,但有一个步骤很关键,那就是要准确的知道“张三丰”、下拉菜单等精确的XY坐标,这个可以借助抓抓工具实现,而且很精确。如下图:
点击编辑窗口菜单中的“抓抓"菜单,再选择左边的”图像“,然后再切换到需要截图的网页中,按”PrintScreen“截屏,再切换到“抓抓”软件界面时,就会出现上面图中所示的界面,最左边显示的是当前鼠标所在准确坐标。这个功能非常好用,也非常必要。
总 结
按键精灵可以通过两种方式制作脚本:
1,录制脚本。这种方式类似于录像,鼠标、键盘操作一遍,从而实现重复回放的操作功能。优点是简单、直接,缺点是有些操作不准确(如下拉菜单选择)。
2,新建脚本。这种方式需要手动指定在哪个坐标点做什么事情。优点是能精确掌控(如下拉菜单选择),缺点是要分别设置每一步的操作代码,过程繁琐。
3,当然,也可以先通过“录制脚本”,发现录制中有些地方操作不准确时,修改代码。也就是把1、2两种方式的优点结合起来,不过也会引入一个新的问题,那就是准确的判断“录制脚本”的问题代码在哪里?
这里需要用到一个技巧:
(1)那就是在可能会出现问题的地方,多停留几秒,这样的话,生成的代码中就会有类似“Delay 5000”(停留5秒)的代码,这样就能很快锁定问题代码大概在什么地方。当代码得到修复以后,再把Delay的延迟改小点即可。
(2)可以通过MsgBox这个弹出框函数来判断,如:
KeyDown "Delete", 1 '按下Delete键,删除上面选择的文本
Delay 115
KeyUp "Delete", 1'释放Delete键
MsgBox "这个一个弹出框!"
上面的代码就是在按完Delete键以后,弹出一个对话框。这个有点类似于javascript中调试时采用alert()这个函数来确定问题代码的位置。修复代码后,再把MsgBox函数注释掉即可。
4,先用代码精确定制不容易录制成功的操作并保存,再用屏幕录制所有步骤的脚本,最后编辑屏幕录制脚本代码,将出问题的代码替换成精确定制的代码。
读者可结合自身,根据情况而定。
android studio按键精灵,按键精灵要点讲解一 - godlike的个人页面 - OSCHINA - 中文开源技术交流社区...相关推荐
- android注销广播接收器,使用广播接收器 - chuiyuan的个人页面 - OSCHINA - 中文开源技术交流社区...
之前 的用Intent 在不同的Activity之间跳转,可以说是直接 Intent,因为指定 了明确 的目标. 广播则是相当于间接Intent. 间接intent就是没有指定具体目标的Intent, ...
- android 开源闹钟,Android闹钟 - huiyun-yoyo的个人页面 - OSCHINA - 中文开源技术交流社区...
设置闹钟 new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() { @Override public void onT ...
- android 8.0 ps 命令,全网最全adb命令 - osc_8exjk9uk的个人空间 - OSCHINA - 中文开源技术交流社区...
一.查看adb版本 adb version C:\Users\Administrator>adb version Android Debug Bridge version 1.0.41 Vers ...
- android加入聊天功能,app实现聊天功能 - houwanmin的个人空间 - OSCHINA - 中文开源技术交流社区...
. OpenIM(Android)主体功能集成 1.1 前置准备 如果您单纯是想体验OpenIM的功能,建议直接跳过这一步.直接查看快速集成. 在这个集成教程中,我们使用已创建的Demo应用,向您 ...
- android widget动画,widget 动画 - androidCode的个人空间 - OSCHINA - 中文开源技术交流社区...
摆在眼前的困难(如果你不能认识到,请再去研究一下): 1.widget能支持的控件及函数屈指可数 2.widget不支持快速刷新 3.widget设置的时候对内存大小有要求 一线曙光: 搜遍了国内外的 ...
- ireader android 源码,仿ireader书架 - androidCode的个人空间 - OSCHINA - 中文开源技术交流社区...
public class ReaderActivity extends Activity { private ShelfAdapter mAdapter; // 书架列表 private ListVi ...
- android 极光推送开源,极光推送 - Android攻城狮的个人空间 - OSCHINA - 中文开源技术交流社区...
1.设置 AndroidManifest.xml libs/jpush-sdk-release 1.x.y.jar libs/armeabi/libsys 1.x.y.so 2.基础API init ...
- android 数组排重方法,js数组去重方法集合 - osc_779ncf3o的个人空间 - OSCHINA - 中文开源技术交流社区...
//第一种方法,新建一个空数组,将原来的数组循环逐个与新数组的成员做比较,如果新数组没有该元素就push进来 var arr = ['a', 1, 1, 1, 2, 4, 4, 'b', 'c', ' ...
- android新浪微博授权,新浪微博授权认证过程 - Android、iOS开发 - OSCHINA - 中文开源技术交流社区...
一.授权认证 1.请求用户授权Token URL: https://api.weibo.com/oauth2/authorize HTTP请求方式:GET/POST 请求参数 必选 类型及范围 说明 ...
- android 编程klinon,一些常见的知识(四) - 393858338的个人空间 - OSCHINA - 中文开源技术交流社区...
24.CoreText基础-字体必修课 转自:http://www.dreamingwish.com/dream-2011/coretext-ji-chu-font-basis.html 介绍一些字体 ...
最新文章
- java 谈设计模式之简单工厂
- python3.6安装pip-python3.6如何安装pip
- 10 种机器学习算法的要点(附 Python 和 R 代码)(转载)
- 某些列满足特定条件,然后改变另外的某些列的值(Python)
- linux中查询动态库版本的命令,linux 程序、动态库、静态库内部添加版本号和编译时间详解...
- Google Map API使用详解(十)——使用JavaScript创建地图详解(上)
- 计算机动漫设计VR主要学什么,动漫设计专业学什么 要学什么软件
- 计算机信息的编码教案,信息的编码教案信息的编码教案.doc
- 一、JpaRepository 命名规范(摘)
- 101/103/104规约应用典型问题例举
- 重磅丨继人工智能大会后《AIOS链上人工智能白皮书》正式发布,核心应用即将开启
- 可用的码支付系统源码
- VMware 虚拟机的使用
- 2020年如何利用外链提升网站排名和权重?
- 苹果无需越狱(iPhone、iPad)手机多开教程
- Java 最全面的面试题675道
- 14.3 inline、const、mutable、this与static
- BBEdit 12.6.6 代码编辑器
- 毕业三年,我从鉴黄师转行到阿里做前端
- v-model的使用
热门文章
- django_filters实现数据过滤
- cpu,内存占用率过高解决方法
- python-web开发(一)知识储备准备
- bmp格式如何转换成png格式
- netty使用中的LEAK: ByteBuf.release() was not called before it‘s garbage-collected
- 微信公众平台小程序开发教程
- 计算机管理服务器,用勤哲Excel服务器实现计算机管理系统
- 判断char*是否为utf8编码
- Chaos Mesh® 在腾讯——腾讯互娱混沌工程实践
- 2021 TCR Asia收官 壳牌捷凯领克东望洋收获大满贯