Foxtable(狐表)用户栏目专家坐堂 → 新增页面问题


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

主题:新增页面问题

帅哥哟,离线,有人找我吗?
落叶孤影
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:189 积分:1618 威望:0 精华:0 注册:2016/5/5 14:56:00
新增页面问题  发帖心情 Post By:2016/9/20 20:20:00 [只看该作者]

在论坛里找的代码,如下:但有点小瑕疵,就是单击窗口中的按钮时,一直增加相同名称的页面。如下图,请问怎么改代码能让页面只增加一个?
图片点击可在新窗口打开查看此主题相关图片如下:qq图片20160920201427.png
图片点击可在新窗口打开查看

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) '切换到新添加的页签

 


[此贴子已经被作者于2016/9/21 10:39:14编辑过]

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/20 20:38:00 [只看该作者]

Dim tab As WinForm.TabControl = e.Form.Controls("TabControl1")
If tab.TabPages.Count > 0 Then Return
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) '切换到新添加的页签

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


加好友 发短信
等级:幼狐 帖子:189 积分:1618 威望:0 精华:0 注册:2016/5/5 14:56:00
  发帖心情 Post By:2016/9/21 8:51:00 [只看该作者]

亲,上面的代码完全就打不开了,我都上传例子了,你都没下载下来看看吗?你给的代码你自己测试了没有?不要为了回答问题而去应付工作好吗?最后再啰嗦一句,你回答问题和解决问题的水平和“大红袍”老师差的太远!希望能改进!

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


加好友 发短信
等级:二尾狐 帖子:574 积分:4252 威望:0 精华:0 注册:2015/5/13 8:32:00
  发帖心情 Post By:2016/9/21 9:09:00 [只看该作者]

 图片点击可在新窗口打开查看看不懂代码么?


Dim tab As WinForm.TabControl = e.Form.Controls("TabControl1")
tab.TabPages.Clear '你的为什么打不开就是因为你里面已经有三个了,而你的要求是只能有一个,人家完全达到你的要求了!你可以加个清空,自己的问题 还骂人
If tab.TabPages.Count > 0 Then Return ‘当页面有0个以上的时候就退出了,人家提供的思路,你完全可以修改一下
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) '切换到新添加的页签



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


加好友 发短信
等级:幼狐 帖子:189 积分:1618 威望:0 精华:0 注册:2016/5/5 14:56:00
  发帖心情 Post By:2016/9/21 9:38:00 [只看该作者]

老师不要误会,我只是提点建议!
估计是我表达的有问题!你们给的代码还不是我想要的结果。你们可以打开项目看下,点击窗口中“查询”按钮时,一直增加上面图片中的“窗口2”这个页面,点击一次就新增加一个同名的“窗口2”页面。我是想实现:点击窗口中“查询”按钮时原来的页面不变,只增加一个“窗口2”页面就行了,谢谢!

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/21 10:17:00 [只看该作者]

Dim tab As WinForm.TabControl = e.Form.Controls("TabControl1")
Dim Name As String = "窗口2"
For Each page As WinForm.TabPage In tab.TabPages
    If page.Name = Name Then Return
Next
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) '切换到新添加的页签

 回到顶部
帅哥哟,离线,有人找我吗?
落叶孤影
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:189 积分:1618 威望:0 精华:0 注册:2016/5/5 14:56:00
  发帖心情 Post By:2016/9/21 10:39:00 [只看该作者]

谢谢!

 回到顶部