动态创建控件的时候绑定事件的方法
By
admin
at 2018-05-11 • 2人收藏 • 1812人看过
今天在论坛看到有人想要实现动态创建控件,并且这些事件想利用一个方法解决。
上面回复有好多中办法了,我这里也想到一种办法。
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的

原来是这么直接就添加进去了啊。。。。。
那么就测试下,直接写入
oncommand = function(id,event){
owner.msgbox(owner.text);
}成功了....
其实真实的过程中,我还去看了帮助手册里windows消息大全,还想过用onnotify....
装逼真不是一件容易的事。
1 个回复 | 最后更新于 2019-10-15
登录后方可回帖
最近也在研究,怎么样可以保存起来窗体加载时读取到上次创建的按钮