Foxtable(狐表)用户栏目专家坐堂 → [求助]动态窗口的afterload添加控件


  共有4688人关注过本帖树形打印复制链接

主题:[求助]动态窗口的afterload添加控件

帅哥哟,离线,有人找我吗?
有点甜
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/2/22 8:58:00 [显示全部帖子]

以下是引用blsu33在2018/2/22 0:13:00的发言:
老师,
 另外一个问题,如3楼,new 出的窗口,在FORM1中CreateControl添加BTN,然后到new窗口中,如何生成窗口后,定义引用BTN
[此贴子已经被作者于2018/2/22 0:15:06编辑过]

 

根据名字可以引用啊

 

Dim abc = new出来的窗口.controls("控件名字")


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/2/22 9:11:00 [显示全部帖子]

以下是引用blsu33在2018/2/22 9:07:00的发言:
老师,
3楼是 用CreateControl 的方式 添加的NEW的窗口中的,按照楼上的说法,测试时不行

 

Dim sender As object=args(0)
Dim e As object=args(1)
Dim frm As WinForm.Form = Forms("窗口1")
Dim btn As WinForm.Button=frm.CreateControl("btn1",ControlTypeEnum.Button)
btn.text="1111"
sender.controls.add(btn.basecontrol)

msgbox(sender.controls("btn1").name)


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/2/22 9:42:00 [显示全部帖子]

不用写basecontrol啊,直接用就行啊。

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/2/22 10:01:00 [显示全部帖子]

看3楼的例子,你怎么写代码?报什么错?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/2/22 10:10:00 [显示全部帖子]

要这样获取,要根据你添加的层级关系进行获取

 

sender.controls("panel容器名").controls("button控件名")


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/2/22 10:31:00 [显示全部帖子]

你要先写 sender.controls.add(pnl_xz.basecontrol) 啊
[此贴子已经被作者于2018/2/22 10:31:46编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/2/22 10:56:00 [显示全部帖子]

1、任何对象都可以添加到字典那里,然后引用。

 

2、如果要相对引用,就必须使用 sender.controls().controls().controls() 这样的写法。


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/2/22 15:06:00 [显示全部帖子]

Dim p As System.Windows.Forms.Panel = sender.controls("pnl_mn_" & frmname & "_" & frmname)

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/2/22 15:46:00 [显示全部帖子]

你new出来的窗口,如果要在别的地方引用,必须通过全局变量vars或者public才行。


 回到顶部
总数 20 上一页 1 2