SecureCrt脚本(二)二级对象之Dialog
Crt自动化 测试 SecureCrt脚本 JS脚本
1、引言
上篇"SecureCrt 脚本函数(一)"中详细介绍了顶级对象’crt’中的子属性和子方法,本篇中将详细介绍’crt’的子属性’Dialog’的方法。'Dialog’主要是用于Crt构建自己的和用户能够交互的简单界面,比如输入字符,弹出对话框,输出提示框等。
2、Dialog属性和方法
属性 方法 FileOpenDialog MessageBox Prompt
2.1、属性
Dialog暂无属性
2.2、方法
2.2.1、FileOpenDialog
解释
定义了一个Dialog(对话框),通过这个对象,可以通过调用该对象的子属性和方法实现对话框的相关功能。
语法
crt.Dialog.Method([arglist])
参数:
(1)title:弹窗最上面的标题文字,见运行结果中窗口最上面的"请选择一个文件"。
(2)buttonLabel:见下图中的"Open"按钮,即打开文件用的,至于名称可以使用"Open"或者"打开"均可。
(3)defaultFilename:默认文件名,如下,在弹窗的"文件名"中默认有"a.log"。注意:当有默认文件名时即使当前文件夹中没有该文件,在点击"打开"按钮后,结果依然会返回该文件的当前目录的绝对路径。
(4)filter:用于过滤文件类型,见脚本举例中的格式,"Log Files (*.log)|*.log,| 的前半部分是一串提示符,会显示在运行结果中的"文件类型"中,后半部分是正则表达式,用于过滤以.log结尾的所有文件。代码
- JS
filePath = crt.Dialog.FileOpenDialog("请选择一个文件", "Open", "a.log", "Log Files (*.log)|*.log")运行结果
2.2.2、MessageBox
解释
弹出一个消息框,可以定义按钮,使用按钮和文本消息来实现和用户的简单对话。
语法
crt.Dialog.MessageBox(message [, title [icon|buttons]])
参数:
(1)message:消息文字,必选参数,见运行结果中的消息正文。
(2)title:弹窗的标题描述,见运行结果中的标题处。
(3)icon:警示图标,见结果中的图1到图4。icon的取值有:16(叉号,表示错误),32(问号,表示确认),48(叹号,表示警告),64(提示,表示信息提示)
(4)buttons:按钮类型,定义不同的类型,可以有不同的选项,同时鼠标点击不同的选项时也有不同的返回值。button取值范围为0到6,
--0:见图5,点击后返回值为1;
--1:见图6,点击'确定'时,返回1,点击'取消'时返回2;
--2:见图7,点击'终止'时,返回3,点击'重试'时返回4,点击'忽略'时返回5;
--3:见图8,点击'是'时,返回6,点击'否'时,返回7,点击'取消'时返回2;
--4:见图9,点击'是'时,返回6,点击'否'时,返回7;
--5:见图10,点击'重试'时,返回4,点击'取消'时返回2;
--6:见图11,点击'取消'时,返回2,点击'重试'时,返回10,点击'继续',返回11;代码
- JS
crt.Dialog.MessageBox("这里是消息框正文","这里是标题",16|0)运行结果:图1:icon=16
运行结果:图2:icon=32
运行结果:图3:icon=48
运行结果:图4:icon=64
运行结果:图5:button=0
运行结果:图6:button=1
运行结果:图7:button=2
运行结果:图8:button=3
运行结果:图9:button=4
运行结果:图10:button=5
运行结果:图11:button=6
2.2.3、Prompt
解释
弹出一个输入框,用户可以填写文字,比如填写文件名,填写路径,填写IP地址等。
语法
crt.Dialog.Prompt(message [, title [, default [, isPassword ]]])
参数:
(1)message:消息文字,必选参数,见运行结果中的消息正文。
(2)title:弹窗的标题描述,见运行结果中的标题处。
(3)default:输入框中的默认值,如果为"",则没有默认值。
(4)isPassword:是否要隐藏输入的文字,类似于日常输入密码时显示****
(5) 运行结果如下图1,如果点击'ok',返回输入的字符串,否则返回""代码
- JS
password = crt.Dialog.Prompt("这里是正文","这里是弹窗标题","这是默认值",true)运行结果
3、总结
以上就是Dialog这个二级属性的所有方法了,对于有和用户有交互需求的地方就可以使用以上几个方法,不过也要注意,虽然这个方法很炫很好看,但是如果过多的使用这些方法,只会适得其反。最后祝大家都能够学会这些方法,其实Dialog这个方法也可以更多的用于调试代码,就和JS中的console.log的功能是一样的,工具很好,学会了运用就能产生很好的效果。
SecureCrt脚本(二)二级对象之Dialog的更多相关文章
- SecureCrt脚本(三)二级对象之Screen详解
Crt自动化 测试 SecureCrt脚本 JS脚本 1.引言 2.Screen属性和方法 2.1.属性 2.1.1.CurrentColumn 2.1.2.CurrentRow 2.1.3.Co ...
- SecureCrt脚本(一)顶级对象之Crt
Crt自动化 测试 SecureCrt脚本 JS脚本 1.引言 2.关于脚本表头 3.顶级对象'crt'的子属性和方法 3.1.属性 3.1.1.Dialog 3.1.2.Screen 3.1.3 ...
- Mybatis架构原理(二)-二级缓存源码剖析
Mybatis架构原理(二)-二级缓存源码剖析 二级缓存构建在一级缓存之上,在收到查询请求时,Mybatis首先会查询二级缓存,若二级缓存没有命中,再去查询一级缓存,一级缓存没有,在查询数据库; 二级 ...
- PowerDesigner生成的ORACLE 建表脚本中去掉对象的双引号,设置大、小写
原文:PowerDesigner生成的ORACLE 建表脚本中去掉对象的双引号,设置大.小写 若要将 CDM 中将 Entity的标识符都设为指定的大小写,则可以这么设定: 打开cdm的情况下,进入T ...
- 深入理解Spring AOP之二代理对象生成
深入理解Spring AOP之二代理对象生成 spring代理对象 上一篇博客中讲到了Spring的一些基本概念和初步讲了实现方法,当中提到了动态代理技术,包含JDK动态代理技术和Cglib动态代理 ...
- Qt对象模型之二:对象树与元对象系统
一.对象树的概念 Qt中使用对象树(object tree)来组织和管理所有的QObject类及其子类的对象.当创建一个QObject时,如果使用了其他的对象作为其父对象(parent),那么这个 Q ...
- SQLServer 事务复制中使用脚本添加某个对象的发布
原文:SQLServer 事务复制中使用脚本添加某个对象的发布 -- use [发布库] --添加表:创建项目并将其添加到发布中 exec sp_addarticle @publication = N ...
- 必须要注意的 C++ 动态内存资源管理(二)——指针对象简单实现
必须要注意的 C++动态内存资源管理(二)——指针对象简单实现 四.拷贝类型的资源 上节我们说过,对于图片类型的资源我们有时候往往采用拷贝(如果对于那种公共图片,可能采用唯一副本,提供 ...
- 编写Python脚本把sqlAlchemy对象转换成dict的教程
编写Python脚本把sqlAlchemy对象转换成dict的教程 在用sqlAlchemy写web应用的时候,经常会用json进行通信,跟json最接近的对象就是dict,有时候操作dict也会比操 ...
随机推荐
- Shell之date用法
创建以当前时间为文件名的 mkdir `date+%Y%m%d` 备份以时间做为文件名的 tar cvf./htdocs`date +%Y%m%d`.tar ./* date命令如何获得上星期的日期? ...
- Jquery获取数据并生成下拉菜单
<script type="text/javascript"> $(document).ready(function() { GetByJquery(); $(&quo ...
- 【leetcode】Subsets
Subsets Given a set of distinct integers, S, return all possible subsets. Note: Elements in a subset ...
- static_cast dynamic_cast const_cast reinterpret_cast总结对比
[本文链接] http://www.cnblogs.com/hellogiser/p/static_cast-dynamic_cast-const_cast-reinterpret_cast.html ...
- 百度编辑器ueditor每次编辑后多一个空行的解决办法
用ueditor进行编辑文章时,每次编辑后文章前面都会多出一个空行. <script id="editor" type="text/plain" styl ...
- Java for LeetCode 038 Count and Say
The count-and-say sequence is the sequence of integers beginning as follows: 1, 11, 21, 1211, 111221 ...
- Greedy:Stripes(POJ 1826)
新生物 题目大意:给你一堆数,两两结合,答案为2*sqrt(x1*x2),问组合成一个数时,最小的量? 超级无敌大水题,排序或者用堆都可以,反正就是优先组合大的,让根号一直把大数开根降低整体的大小 # ...
- python为什么有私有方法和变量
1. 访问安全,其实也没有决定的安全 >>> class humer(object): ... def __init__(self, name): ... self.name = n ...
- 奇怪的梦境(codevs 2833)
题目描述 Description Aiden陷入了一个奇怪的梦境:他被困在一个小房子中,墙上有很多按钮,还有一个屏幕,上面显示了一些信息.屏幕上说,要将所有按钮都按下才能出去,而又给出了一些信息,说明 ...
- 【读书笔记】读《JavaScript高级程序设计-第2版》 - 非函数部分
章节列表: 第08章:BOM 第09章:客户端检测 第10章:DOM 第11章:DOM2和DOM3 第12章:事件 第13章:表单脚本 第14章:错误处理与调试 第17章:Ajax和JSON第20章: ...