>

修改权重

2018/3/7 15:37:31 小白 编辑:小白 于 2018/3/7 15:37:31

每一个对象都有很多的属性,每个属性后都附带了一个权重,对于一些很重要的属性默认的权重是100,而对于不是太重要的属性默认权重是0。当回放某个对象动作时首先会在窗口中找到这一对象,之后再与之进行各项属性比较,如果属性权重大于0,会比较属性值,如果相等则继续下一个属性比较,如果不相等也不会马上认为这不是要找的对象(模糊识别),而是会将权重值累加,当不相等属性值的累加权重大于100时才认为对象不匹配。所以,如果一个对象的某项属性值变动了,而它的权重又是100的话,可以通过降低权重使回放得以通过。下面以录制记事本程序为例,介绍一下权重的修改。新建一个名为test.txt的文本文档,双击打开,录制一段在记事本中输入文本的动作(比如输入文本spasvo),脚本如下:

在回放之前先,改变记事本窗口的大小,比如拉宽窗体,回放时会有如下错误:

因为此时Edit对象的宽度已经改变,而宽度的权重是100,所以回放失败。要使得回放通过,可以修改宽度属性的权重。打开对象库,在右边的树中找到名为Edit的节点并单击打开属性面版,将其中的width属性权重设为50(小于100的数值均可),关闭对象库后回放可以成功。

在实际使用当中,也可以根据情况修改其他参数的权重,如果修改的权重项越多,回放时查找到的目标对象的准确度会越低,所以一般的回放不建议手动修改,只有在极其特殊的情况下,比如对象的某项属性会经常性动态变动而它的权重又是100时才适合使用;当然如果觉得某项属性很重要,而在对象库中的权重又是0,你也可以手动将它的权重设为100,这样在回放时此项属性也会进行匹配判断,以提高准确度。通常情况下不建议使用者手工修改权重,一是修改权重后可能会导致查找的对象有误,另一个原因是软件在回放时内部做了一些智能判断,如果第一次查找对象失败,会自动的将某一些权重设为零,再重新查找。

沪ICP备07036474号 2003-2019 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd.