Foxtable(狐表)用户栏目专家坐堂 → 关于TableControl控件动态新增


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

主题:关于TableControl控件动态新增

帅哥哟,离线,有人找我吗?
大红袍
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/27 10:23:00 [显示全部帖子]

 先设计好各个页签,然后通过显示和隐藏即可实现啊。右键关闭,你可以用弹出菜单处理。


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/27 10:34:00 [显示全部帖子]

以下是引用sara在2015/5/27 10:26:00的发言:
厉害,我怎么没想到呢,那TabControl中的页签个数没有限制吧?我可能需要上百个页面
[此贴子已经被作者于2015/5/27 10:26:42编辑过]

 

如果有上百个,建议每个页签单独做一个窗口,然后把窗口剪切到页签里去,参考

 

Dim PB As WinForm.Panel = e.Form.Controls("Panel2")
Dim Name As String = "工具栏"
Forms(Name).OPEN(-1000,-1500)
Forms(Name).BaseForm.TopLevel = False
Forms(Name).BaseForm.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None
Forms(Name).BaseForm.Dock = System.Windows.Forms.DockStyle.Fill
PB.BaseControl.Controls.Clear
PB.BaseControl.Controls.add(Forms(Name).BaseForm)

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/27 10:55:00 [显示全部帖子]

以下是引用sara在2015/5/27 10:38:00的发言:
有链接吗?

 

1、做一个窗口2,独立窗口;

 

2、在主窗口加入下面的代码

 

Dim tab As WinForm.TabControl = e.Form.Controls("TabControl1")
Dim Name As String = "窗口2"

tab.TabPages.Add(name,name)
Dim pb = tab.BaseControl
Forms(Name).OPEN(-1000,-1500)
Forms(Name).BaseForm.TopLevel = False
Forms(Name).BaseForm.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None
Forms(Name).BaseForm.Dock = System.Windows.Forms.DockStyle.Fill
PB.TabPages(name).Controls.Clear
PB.TabPages(name).Controls.add(Forms(Name).BaseForm)
tab.SelectedPage = tab.TabPages(name)


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/27 11:24:00 [显示全部帖子]

 name 和 Name 是一样的意思

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/27 11:25:00 [显示全部帖子]

 

Dim tab As WinForm.TabControl = e.Form.Controls("TabControl1")
Dim Name As String = "窗口2"

tab.TabPages.Add(name,name)
Dim pb = tab.BaseControl
Forms(Name).OPEN(-1000,-1500) '打开窗口
Forms(Name).BaseForm.TopLevel = False '设置级别
Forms(Name).BaseForm.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None '去边框
Forms(Name).BaseForm.Dock = System.Windows.Forms.DockStyle.Fill '设置停靠样式
PB.TabPages(name).Controls.Clear '清楚页签的控件
PB.TabPages(name).Controls.add(Forms(Name).BaseForm) '加入到页签去
tab.SelectedPage = tab.TabPages(name) '切换到新添加的页签


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/27 11:36:00 [显示全部帖子]

以下是引用sara在2015/5/27 11:33:00的发言:
Forms(Name).BaseForm.TopLevel = False '设置级别
这一句有问题啊,显示未将对象引用设置到对象实例

 

name的窗口,必须是独立窗口


 回到顶部