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的更多相关文章

  1. SecureCrt脚本(三)二级对象之Screen详解

    Crt自动化 测试 SecureCrt脚本 JS脚本   1.引言 2.Screen属性和方法 2.1.属性 2.1.1.CurrentColumn 2.1.2.CurrentRow 2.1.3.Co ...

  2. SecureCrt脚本(一)顶级对象之Crt

    Crt自动化 测试 SecureCrt脚本 JS脚本   1.引言 2.关于脚本表头 3.顶级对象'crt'的子属性和方法 3.1.属性 3.1.1.Dialog 3.1.2.Screen 3.1.3 ...

  3. Mybatis架构原理(二)-二级缓存源码剖析

    Mybatis架构原理(二)-二级缓存源码剖析 二级缓存构建在一级缓存之上,在收到查询请求时,Mybatis首先会查询二级缓存,若二级缓存没有命中,再去查询一级缓存,一级缓存没有,在查询数据库; 二级 ...

  4. PowerDesigner生成的ORACLE 建表脚本中去掉对象的双引号,设置大、小写

    原文:PowerDesigner生成的ORACLE 建表脚本中去掉对象的双引号,设置大.小写 若要将 CDM 中将 Entity的标识符都设为指定的大小写,则可以这么设定: 打开cdm的情况下,进入T ...

  5. 深入理解Spring AOP之二代理对象生成

    深入理解Spring AOP之二代理对象生成 spring代理对象 上一篇博客中讲到了Spring的一些基本概念和初步讲了实现方法,当中提到了动态代理技术,包含JDK动态代理技术和Cglib动态代理 ...

  6. Qt对象模型之二:对象树与元对象系统

    一.对象树的概念 Qt中使用对象树(object tree)来组织和管理所有的QObject类及其子类的对象.当创建一个QObject时,如果使用了其他的对象作为其父对象(parent),那么这个 Q ...

  7. SQLServer 事务复制中使用脚本添加某个对象的发布

    原文:SQLServer 事务复制中使用脚本添加某个对象的发布 -- use [发布库] --添加表:创建项目并将其添加到发布中 exec sp_addarticle @publication = N ...

  8. 必须要注意的 C++ 动态内存资源管理(二)——指针对象简单实现

    必须要注意的 C++动态内存资源管理(二)——指针对象简单实现 四.拷贝类型的资源         上节我们说过,对于图片类型的资源我们有时候往往采用拷贝(如果对于那种公共图片,可能采用唯一副本,提供 ...

  9. 编写Python脚本把sqlAlchemy对象转换成dict的教程

    编写Python脚本把sqlAlchemy对象转换成dict的教程 在用sqlAlchemy写web应用的时候,经常会用json进行通信,跟json最接近的对象就是dict,有时候操作dict也会比操 ...

随机推荐

  1. Shell之date用法

    创建以当前时间为文件名的 mkdir `date+%Y%m%d` 备份以时间做为文件名的 tar cvf./htdocs`date +%Y%m%d`.tar ./* date命令如何获得上星期的日期? ...

  2. Jquery获取数据并生成下拉菜单

    <script type="text/javascript"> $(document).ready(function() { GetByJquery(); $(&quo ...

  3. 【leetcode】Subsets

    Subsets Given a set of distinct integers, S, return all possible subsets. Note: Elements in a subset ...

  4. static_cast dynamic_cast const_cast reinterpret_cast总结对比

    [本文链接] http://www.cnblogs.com/hellogiser/p/static_cast-dynamic_cast-const_cast-reinterpret_cast.html ...

  5. 百度编辑器ueditor每次编辑后多一个空行的解决办法

    用ueditor进行编辑文章时,每次编辑后文章前面都会多出一个空行. <script id="editor" type="text/plain" styl ...

  6. 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 ...

  7. Greedy:Stripes(POJ 1826)

    新生物 题目大意:给你一堆数,两两结合,答案为2*sqrt(x1*x2),问组合成一个数时,最小的量? 超级无敌大水题,排序或者用堆都可以,反正就是优先组合大的,让根号一直把大数开根降低整体的大小 # ...

  8. python为什么有私有方法和变量

    1. 访问安全,其实也没有决定的安全 >>> class humer(object): ... def __init__(self, name): ... self.name = n ...

  9. 奇怪的梦境(codevs 2833)

    题目描述 Description Aiden陷入了一个奇怪的梦境:他被困在一个小房子中,墙上有很多按钮,还有一个屏幕,上面显示了一些信息.屏幕上说,要将所有按钮都按下才能出去,而又给出了一些信息,说明 ...

  10. 【读书笔记】读《JavaScript高级程序设计-第2版》 - 非函数部分

    章节列表: 第08章:BOM 第09章:客户端检测 第10章:DOM 第11章:DOM2和DOM3 第12章:事件 第13章:表单脚本 第14章:错误处理与调试 第17章:Ajax和JSON第20章: ...