动态创建控件的时候绑定事件的方法

By admin at 2018-05-11 • 0人收藏 • 239人看过

今天在论坛看到有人想要实现动态创建控件,并且这些事件想利用一个方法解决。

上面回复有好多中办法了,我这里也想到一种办法。

import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio form";right=759;bottom=469)
winform.add()
/*}}*/

var btTab = {
	cls="button";
	text="button";
	left=173;
	top=40;
	right=344;
	bottom=77;
	//z=1;
	oncommand = function(id,event){
		owner.msgbox(owner.text);
	}
}

for(i=1;5;1){
	winform.add( 
		 ["button"++i] = table.clone(btTab);
	)
	btTab.text = "button"++i;
	btTab.top += 42;
	btTab.bottom += 42;
}

winform.show() 
win.loopMessage();

不要看上面这么几句代码, 俗话说装逼一分钟,就得努力十分钟。真不是假的,虽然心里已经有了这么个想法, 但是要写成代码就比较难了。

思路:

之前看到过官方有些库里就是动态生成控件并且绑定了事件的,找了下,嗯,那个listbox的双击编辑算一个,plus的文本编辑模式算一个,于是打开这两个库

首先看到了listbox的

blob.png

原来是这么直接就添加进去了啊。。。。。

那么就测试下,直接写入

oncommand = function(id,event){
		owner.msgbox(owner.text);
	}

成功了。欢喜....

其实真实的过程中,我还去看了帮助手册里windows消息大全,还想过用onnotify....

装逼真不是一件容易的事。

登录后方可回帖

登 录
信息栏
本站永久域名:HtmLayout.Cn
纯私人站,当笔记本用的,学到哪写到哪,目前正在学aardio+halcon机器视觉.
本 站 主 站:Stm32cube中文网
Aardio 官方站:Aardio官方
Aardio最新功能:Aardio官方更新日志
aardio在线手册Aardio在线手册
Htmlayout皮肤Htmlayout皮肤引擎介绍
黑猫Aar教程网:简码编程
C大Aardio论坛:Aar爱好者论坛
AARDIO语言QQ群:70517368
赞助商:才仁机械
下载站:非凡软件站
Loading...