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也会比操 ...
随机推荐
- easyui-datagrid 两次请求
原因分析及解决方案 html代码中利用class声明了datagrid,导致easyUI解析class代码的时候先解析class声明中的datagrid,这样组件就请求了一次url:然后又调用js初始 ...
- Having与Where的区别
where 子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,where条件中不能包含聚组函数,使用where条件过滤出特定的行. having 子句的作用是筛 ...
- 【SpringMVC】SpringMVC系列5之@RequestHeader 映射请求头属性值
5.@RequestHeader 映射请求头属性值 5.1.概述 请求头包含了若干个属性,服务器可据此获知客户端的信息,通过 @RequestHeader 即可将请求头中的属性值绑定到处理方法的入参中 ...
- 在SharePoint 2010 母版页里添加自定义用户控件
在SharePoint 2010 母版页里添加自定义用户控件(译) 使用自定义用户控件的好处: 1.容易部署:2.易于控制显示或隐藏. (在使用的过程中)可能要面对的问题是:如何在用户控件里使用Sha ...
- Docker跨主机通信之路由
一.实验环境: 主机名 主机IP Docker0_IP Docker1 192.168.88.130 172.17.0.1 Docker2 192.168.88.131 172.18.0.1 二.实验 ...
- AngularJS学习笔记1
简介 AngularJS 是一个为动态WEB应用设计的结构框架,提供给大家一种新的开发应用方式,这种方式可以让你扩展HTML的语法,以弥补在构建动态WEB应用时静态文本的不足,从而在web应用程序中使 ...
- Android实现监测网络状态
本文主要用到了安卓监测网络状态变化功能,实现了WIFI,3G,无网络状态切换时发出通知的功能. 主要知识点 service broadcast 接口回调实现 service的基本知识 service可 ...
- 个人博客转移到CSDN
因个人博客编辑的需要,现将我的博客转移到CSDN,如果没有特别需要,以后会在CSDN上继续书写博客 关于Fresco的分析以及后续的相关分析,也会转移到CSDN 个人CSDN主页: http://bl ...
- SQL 外键
先新建2个表,写入数据 -- 创建测试主表. ID 是主键. CREATE TABLE test_main ( id INT, value ), PRIMARY KEY(id) ); -- 创建测试子 ...
- WPF MVVM 关闭View
在ViewModel中定义一个变量: private Action _closeAction; 在ViewModel的构造函数中这样定义:public MainWindowViewModel(Acti ...












