qtp录制时间控件不允许用户手动输入的解决办法
qtp录制时间控件不允许用户手动输入的解决办法
[前面的话]
一边学习qtp,一边用自己的项目试着写代码,而遇到一个问题就会让自己卡壳很久,这次也是这样的,在写好了登录代码以后,自己就试着写第一个预订机票的代码,但是到达输入出发城市和到达城市时,qtp就已经不能自动识别了,这个问题还好解决,但是到达输入出发时间的时候,又和输入城市的内容不太一样,这样就让我又困扰了很久,今天终于解决了着两个问题,写写笔记。
[遇到问题]
1, qtp录制下拉菜单的时候,有一种下拉菜单是这样的:可以手动输入的WebEdit,这样的WebEdit,如果在录制的时候,识别不了应该怎么解决?比如我遇到的输入出发城市。读者如果还不理解可以去看看去哪网的机票预订的出发城市选择,就是那样的下拉菜单,是可以手动输入的。
2, 第二种就是标题所示的,不能手动输入的下拉菜单,也就是qtp录制时间控件不允许用户手动输入的解决办法。
[解决办法]
1, 对于第一个问题,其实比较简单,一般的读者在操作的时候,都习惯于选择下拉菜单中的某个选项,但是如果读者在录制的时候选择,一般qtp较难识别到,所以读者可以在录制的时候,不要直接选择下拉菜单,而选择手动输入,这样qtp就可以识别到读者的操作了。
代码一般为:Browser("XX").Page("XX").Frame("XX").WebEdit("WebEdit").Set "西安"
当然这个代码不是唯一的,有的系统是有红色部分,有的是没有的。读者自己试试。
2, 对于第二个问题,就是这个下拉菜单不能够输入任何东西,只能选择下面提供的选项,对于这个问题,解决办法:
l 将不能识别的时间控件添加到对象库中,操作步骤是:点击resources——选择object repositories ——点击object——点击add object to local。点击完add object to local这个以后, qtp会让你选择你要添加那个对象到对象库中,你就直接点击一下输入时间的那个框,也就是不能手动输入的那个框。
下图是显示resources的位置:

l 然后你在添加代码如下:Browser("XX").Page("XX").Frame("41").WebEdit("startDateText").Object.value="2013-10-11"
也有可能是这样的:
Browser("XX").Page("XX"). WebEdit("startDate").Object.value="2013-10-11"
为什么会有这两种的哪?读者可能会问,到底是那种,这主要看你在添加到对象库的时候,你的对象是什么样的。
比如我的是这样的:
下图1,对象名是:startDateText,所以我的代码中是WebEdit("startDateText")而不是WebEdit("startDate")。
PS:如果读者有兴趣测试一下去哪网的话就会发现代码就是WebEdit("startDate")这种情况。

下图2,显示的是,我的时间输入的WebEdit是在Frame("41")下面的,所以前面有一个Frame("41")。读者一定要看清楚自己不能输入的下拉菜单代码的设计结构,不一定要去看代码,在添加到对象库的时候就一定要看清楚。

l 如果你添加了,如果像验证一下,是否添加成功,可以在active screen中,点击录制不了的控件,也就是你要输入日期的下拉框,右键,点击view/add object就会弹出object selection窗口,如果里面的对象是你刚刚添加进对象库的,那么就说明添加成功了,如果不是那么就在添加一次。
[学习经验]
对于这次学习的经过,自己还是感觉挺失望了,毕竟花费了我较多的时间,但是从另一个角度我又学习很多知识。总之,以后对于这些操作,都要多动手,多动脑。
[感悟]
如果一个人尽可能做好能做的事情,那这个世界就一定会因为这件事情而变得更美好一点。
人只要奋斗,就会犯错。
TT
qtp录制时间控件不允许用户手动输入的解决办法的更多相关文章
- ActiveX控件注册不起作用的解决办法
公司写了一个ActiveX打印插件.其中一个同事的电脑死活不能用.于是我就上网找办法 这位兄弟写的比较清晰. ActiveX交互时浏览器的设置以及ActiveX控件注册的检测 http://blog. ...
- 在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke 解决办法
增加IsHandleCreated 判断 if (this.IsHandleCreated) { this.Invoke(new EventHandler(delegate { ...... })); ...
- C# winfrom中Flash播放使用axShockwaveFlash控件设置透明XP出现白色背景解决办法,仿QQ魔法表情效果
//播放时 图片周围有锯齿白边出现 反锯齿处理暂无解决办法. 如有大神 请给我留言 新Form AllowDrop True 引用using System.IO; 拖1个Button p ...
- robotframe使用之时间控件
robotframe使用之时间控件 正常的页面,时间控件会写在一个iframe里面,所以robotframework找不到对的ID或者xpath等. 要解决这个问题必选先显示iframe. 使用关键字 ...
- JSP页面中的精确到秒的时间控件
技术:Struts1+jsp+MSql 需求:ncmgt网络监控系统中显示用户的操作日志,并且根据操作时间查询用户的详细操作记录.时间精确到秒 大致效果如下.上图! 大家可以清晰的看到.红色画线部分就 ...
- js实现时间控件
<html><head> <title>时间控件</title></head><body > <input name=&q ...
- bootstrap-datetimepicker时间控件
欢迎各种吐槽. 本人小前端,学习过程中,某日遇到做时间控件的需求,于是无休止的召唤了度娘,发现看不太懂.算是为自己做个笔记,也便于菜鸟级别的看的懂. 首先,我们看看点击选择时间的时候的展示页面吧 年 ...
- rf对时间控件的操作
1.如何去掉readonly属性 前端对于时间控件的设置,有时是为了限制用户不能进行手动输入方式进行选择时间,避免在手动输入的时候超限或者输入格式不正确,导致一些不必要的验证麻烦,这是前端开发工程师就 ...
- C# 时间控件 竖直进度条 饼图显示 仪表盘 按钮基础控件库
Prepare 本文将使用一个NuGet公开的组件来实现一些特殊的控件显示,方便大家进行快速的开发系统. 在Visual Studio 中的NuGet管理器中可以下载安装,也可以直接在NuGet控制台 ...
随机推荐
- jenkins实现maven项目自动化部署tomcat
最近公司有用到jenkins实现自动化部署,这里我对新的东西也是比较感兴趣,就用了点时间尝试了一下,虽然网上有很多这种例子,但是可能有些细节我也走了一些弯路.在这里记录一下,方便下次用到. 实现环境: ...
- 使用树莓派录音——USB声卡
原文链接:http://jingyan.eeboard.com/article/73723 我们都知道树莓派只有音频输出口,而没有音频输入的接口,怎么办呢?其实只要一个USB声卡就可以了. USB声卡 ...
- HDU2819:Swap(二分图匹配)
Swap Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- unix网络编程-套接字编程 读书笔记
1. 学习总结(目前只看了前6章):http://note.youdao.com/noteshare?id=2a0c29f5feeddd8f6f390427f0d67114 2. 课后习题 第一章 h ...
- HDU 3487 Splay tree
Play with Chain Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)T ...
- CSS3知识之立方体动画效果
效果图:
- 转:为什么在定义hashcode时要使用31这个数呢?
散列计算就是计算元素应该放在数组的哪个元素里.准确的说是放到哪个链表里面.按照Java的规则,如果你要想将一个对象放入HashMap中,你的对象的类必须提供hashcode方法,返回一个整数值.比如S ...
- js 拖动滑块验证
备注:拖动滑块时尽量平移,chrome浏览器上没有卡顿情况,但是搜狗极速模式和360极速模式都遇到了卡顿,拖不动情况,应是浏览器内部对事件响应速度导致吧. JS代码: ;(function ($,wi ...
- 快速搭建rabbitmq单节点并配置使用
安装erlang环境 wget http://erlang.org/download/otp_src_20.3.tar.gz tar xf otp_src_20.3.tar.gz && ...
- 【BZOJ】1385 [Baltic2000]Division expression
[算法]欧几里德算法 [题解]紫书原题 #include<cstdio> #include<algorithm> using namespace std; ; int T,t, ...