编程教程:aardio中子窗口调用父窗口函数

Admin Admin
发布:2017-08-10 20:59:34 分类:心得经验
子窗口调用父窗口函数是比较常用的编程技术,通常用于把功能分解模块化到多窗口的程序中,比如一个程序有登陆窗口、主窗口、管理窗口、编辑窗口、查询窗口等,就需要父子窗口之间互相通信,互相操作对方。下面演示一个最简单的父子窗口互动编程教程
1.新建win窗口工程
2.工程资源管理器资源文件文件夹上右键,新建窗口文件
3.把child1.aardio拖到main.aardio里,会自动生成引用代码
var frmChild,wb = mainForm.loadForm("\res\child1.aardio");
frmChild.show();

4.在子窗口上放一个按钮,双击进去,写上代码
winform.button.oncommand = function(id,event){
winform.parent.主窗口加法(1,2)
}

5.在主窗口里写上函数
mainForm.主窗口加法 = function(a,b){
win.msgbox(a+b)
}
这里要注意把函数作为主窗口mainForm的成员函数,不然子窗口调用时会报null。
现在我们来理解一下,当
mainForm.loadForm("\res\child1.aardio")
时,因为child1里有return winform;所以child1变成了mainForm的子窗口,那么子窗口中的winform.parent指的就是mainForm,然后 winform.parent.主窗口加法(1,2) 指的就是 mainForm.主窗口加法()。


主窗口源码:
import win.ui;
/*DSG{{*/
mainForm = win.form(text="简码编程 jianma123.com";right=759;bottom=469)
mainForm.add(
edit={cls="edit";left=14;top=246;right=743;bottom=455;db=1;dl=1;dr=1;dt=1;edge=1;multiline=1;z=1}
)
/*}}*/

//注意这里是 mainForm. 即是 主窗口加法 变成了mainForm的成员函数
mainForm.主窗口加法 = function(a,b){
win.msgbox(a+b)
}


var frmChild,wb = mainForm.loadForm("\res\child1.aardio");
frmChild.show();


mainForm.enableDpiScaling();
mainForm.show();

return win.loopMessage();


子窗口源码:
import win.ui;
/*DSG{{*/
var winform = win.form(text="简码编程 jianma123.com 子窗口";right=387;bottom=241;parent=...)
winform.add(
button={cls="button";text="button";left=122;top=83;right=256;bottom=139;z=1}
)
/*}}*/
//注意窗口构建代码里有 parent=...

winform.button.oncommand = function(id,event){
winform.parent.主窗口加法(1,2);// winform.parent指的是用loadForm()加载之个子窗口的父对象

}


winform.enableDpiScaling();
winform.show();

win.loopMessage();
return winform;//注意这里返回窗口对象给父窗口

其它:
父子窗口的互相调用操作,还有在父窗口或子窗口里定义全局变量、全局函数等方法,请自行研究。
[ 发单/接单 ]
换IP投票软件
PC蛋蛋自动挂机投注
新浪微博发微博显示尾巴的方法,比如显示来自iphone 7
百度文库批量自动上传软件
一点资讯app刷阅读量/评论/收藏/订阅功能/手机号注册
定做一个阿迪达斯官网注册器(需要破点击文字式验证码)
定制人人网自动注册/修改资料/采集/私聊软件
酷狗繁星直播网页协yi
YY多功能刷订阅刷粉丝
滑块验证码本地识别
狼人杀POST QQ登录注册 获取金币数量
做个贴吧发发帖的软件懂的来
今日头条账号保存cookie
抖音粉丝软件定做,只要粉丝
百家号自媒体发文软件定制
哔哩哔哩播放量
读取TB某个商品上架时间和相关信息
网易博客软件定制
定制天涯论坛发帖软件
定制今日头条批量自动发私信软件
[ 站内搜索 ]
[ 最近热帖 ]
万能助手 -- 扩展库大全集 13757
用aardio创建web工程图文讲解(1) 12848
电脑编程入门自学:Fiddler https 抓包时提示创建根证书不成功问题彻底解决(https插件dll方式) 11748
aardio绘图演示 11416
通过chrome.dll中间件控制外部chrome浏览器 10132
我常用的aardio技巧 9781
《边学C语言边赚钱——简码编程入门教程》系列集合 9620
aardio使用http或whttp进行get/post请求时经常cookies失效怎么办?__电脑计算机编程入门教程自学 9324
[源码下载]简码视频加密解密播放工具个人版v1.0发布,永久免费开源的知识变现神器 8559
python人工智能爬虫系列:怎么查看python版本_电脑计算机编程入门教程自学 8052
编程入门教程:aardio批量上传文件并显示进度条 7889
aardio调用nodejs的ws模块做一个简单的聊天通信示例 7042
电脑计算机编程入门教程自学:原生JavaScript判断字符是否为A-Za-z英文字母 6911
电脑计算机编程入门教程自学:腾讯tx或极验geetest滑块按住拖动完成拼图验证成功破解思路及源码 6506
乐玩插件AARDIO调用 6092
[ 近期热答 ]
电脑计算机编程入门教程自学:什么是buffer缓冲区? 1
aardio_代码编辑框书签管理器开源 1
aardio_怎么用ide库从代码编辑框中取出指定行的源码? 1
aardio_codepage代码页编码乱码暴力猜解工具 1
aardio内嵌echarts图表添加鼠标事件响应功能 2
aardio列表框listbox_模糊查找和精确查找 1
8亿QQ绑定手机泄露:通过腾讯QQ号查询QQ绑定的手机号码漏洞! 1
carl listviewex调用例子----------源码搬运工 2
Aardio内嵌Electron浏览框怎么正确添加启动参数? 1
Aardio取汉字的字节数或字符数 1
怎么实现mssql图片数据的读写 2
aardio_从49个数字里选六个和值为150的不重复的数字 1
在嵌入wps的时候,多了一个 透明的边框,这个怎么消除它 1
万能助手入门帮助教程:学会科学地管理工作文件 1
Aaardio开发内嵌Electron浏览框放服务器上无法下载组件的解决办法 1