windev的内部窗口传参方式及其与类的相似性
最近的应用,需要向一个内部窗口(internal window)传参,因为官方文档的说明较为宽泛,虽然结果只有两小段代码,但也费了很大的劲。把所有关于procedure的文档看一遍,又是重新学习了一遍C#的类与方法,才最终解决了这个问题。向内部窗口传参,有三个方法可以使用,我使用的是第三种方法,以下会重点说明第三种方法:
方法一:如果是动态标签页(Dynamic Tab)的内部窗口,可以通过TabOpen直接传参,这个和窗口传参的用法一样,如下:
TabOpen(TAB_Main, "Test of the new tab", IWIN_InternalWindow,"Param1","Param2")
方法二:如果是内部窗口控件的内部窗口,可以用方法二和方法三。方法二直接用函数ChangeSourceWindow来传递参数
方法三:因为我的应用不需要改变内部窗口,所以使用了procedure的方式来传递参数。步骤如下:
1、在内部窗口创建一个Local Procedure,如:
Procedure IWINParam(Param1,Param2)
//以下为代码块,Param1和Param2类似于行参
2、在放置内部窗口控件的父窗口,调用步骤1自建的过程函数,并将实参传递过去,如:
//其中IWCTRL_ControlName为内部窗口控件的名称,此处的Param1和Param2为实参 Param1 is string = "HI"
Param2 is int = 123 IWCTRL_ControlName.IWINParam(Param1,Param2)
两个步骤,即可完成参数传递,很简单。但因为官方文档说明的隐晦,却是让人想破了脑袋,直到重新学习了一次C#的类和方法,才推断官方文档中的说明,也许就是引用类方法的用法。事实证明,两者的相似性是非常大的。内部窗口相当于一个类,类的名称就是父窗口中内部窗口控件的名称,而在内部窗口中自建的Procedure,相当于类的一个方法,所以用类名.方法名的方式,可以直接调用这个方法。
windev的内部窗口传参方式及其与类的相似性的更多相关文章
- Python函数定义及传参方式
主要内容: 1.函数初识 2.函数传参方式 (1)位置参数 (2)默认参数 (3)关键参数 (4)非固定传参 一.函数初识 1. ...
- angularjs简单实现$http.post(CORS)跨域及$http.post传参方式模拟jQuery.post
1.开启angularjs的CORS支持 .config(function($httpProvider) { // CORS post跨域配置 $httpProvider.defaults.useXD ...
- react中的传参方式
react是一个SPA模式,即组件嵌套租,在一个单页面的应用中组件间的数值传递是必不可少的,主要的传参方式大致有一下几种: 1,在挂载的地方给组件传参 ReactDOM.rander(<a na ...
- Web API中的传参方式
在Restful风格的WebApi的里面,API服务的增删改查,分别对应着Http Method的Get / Post / Delete /Put,下面简单总结了Get / Post /Delete ...
- jQuery对象初始化的传参方式
jQuery对象初始化的传参方式包括: 1.$(DOMElement) 2.$(' ... '), $('#id'), $('.class') 传入字符串, 这是最常见的形式, 这种传参数经常也传入第 ...
- java 传参方式--值传递还是引用传递
java 传参方式--值传递还是引用传递 参数是按值而不是按引用传递的说明 Java 应用程序有且仅有的一种参数传递机制,即按值传递.写它是为了揭穿普遍存在的一种神话,即认为 Java 应用程序按引用 ...
- mock和axios常见的传参方式
第一次接手项目,传参方式还有些吃力,因此做一下总结. 首先我们需要会看swagger中的接口.里面写了某个接口需要接收什么样的值,前端怎么传递这个值 在mock中的传参方式: mock中传参的方式有两 ...
- $router和$route的区别,路由跳转方式name 、 path 和传参方式params 、query的区别
一.$router和$route的区别 $router : 是路由操作对象,只写对象$route : 路由信息对象,只读对象 例子://$router操作 路由跳转 this.$router.push ...
- 指针数组的初始化和遍历,并且通过for循环方式、函数传参方式进行指针数组的遍历
/************************************************************************* > File Name: message.c ...
随机推荐
- python小白入门基础(二:变量)
#变量:可以改变的量就是变量,实际上是由内存开辟的一块空间,临时存在内存中,以便后续代码使用.#作用:代指内存中某个地址中的内容. #1.变量的概念name = "王五"name ...
- 利用css3 transform实现一个时钟
transform:rotate(1deg) <!DOCTYPE html> <html lang="en"> <head> <meta ...
- 浅谈备受开发者好评的.NET core敏捷开发工具,讲讲LEARUN工作流引擎
通俗来讲,所谓一个工作流管理系统,如果将其拆分出来一个个单讲话,大致可理解为由工作流引擎.工作流设计器.流程操作.工作流客户界面. 流程监控.表单设计器.与表单的集成以及与应用程序的集成等几个部分组成 ...
- ElasticsSearch初装 环境Win10
步骤: 1.从 http://how2j.cn/frontdownload?bean.id=1694 下载6.22 版本 2.双击elasticsearch.bat启动ElasticsSearch [ ...
- elasticsearch跨集群数据迁移
写这篇文章,主要是目前公司要把ES从2.4.1升级到最新版本7.8,不过现在是7.9了,官方的文档:https://www.elastic.co/guide/en/elasticsearch/refe ...
- 【转】PHP面试总结
文章出处:https://www.cnblogs.com/codetao/p/6418127.html
- apisix docker镜像构建及插件化开发
高能劝退:lua开发,适合小白看!!! 前段时间有个项目,用的java程序做网关,压测tps只有1k多点,惨不忍睹. 后来公司有个大佬改用apisix做网关,tps飙升到1w多. 于是对神奇的apis ...
- Istio 运维实战系列(2):让人头大的『无头服务』-上
本系列文章将介绍用户从 Spring Cloud,Dubbo 等传统微服务框架迁移到 Istio 服务网格时的一些经验,以及在使用 Istio 过程中可能遇到的一些常见问题的解决方法. 什么是『无头服 ...
- VC 编译 MATLAB 的 mex 文件
VC 编译 MATLAB 的 mex 文件mex 文件是 MATLAB 调用其他程序设计语言程序或算法的接口.在 Windows 环境中,mex 文件是扩展文件名为 DLL 的动态链接库,可以在 m ...
- 深度长文整理-Redis进阶
目录 一.基础 二.为什么Redis是单线程的? 三.为什么单线程这么快? 四.select.poll.epoll 五.Redis的事物 六.Redis的监控 七.Redis的配置文件 八.Redis ...