以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  tab页面控制显示和关闭  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=34283)

--  作者:everybody
--  发布时间:2013/6/4 14:46:00
--  tab页面控制显示和关闭
仔细研究了一下管易顺,发现里面的导航还是很实用的,求教大大出公式

1、窗口加载时,隐藏除tab1之外的所有tab页;


这是隐藏单个页面的公式,如何for each遍历隐藏?求教


Dim pg As WinForm.TabPage
pg = Forms(
"窗口1").Controls("TabControl1").TabPages(1)
pg.Visible =
False




2、双击tab页时,自动”关闭“(实际上应该是隐藏吧)当前tab页。


这个估计要设计在控件双击doubleclick里面的,估计是slect case 吧,也不同如何写公式,呵呵


请教啊请教!


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20130604143849.png
图片点击可在新窗口打开查看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:tab页面控制.table




--  作者:everybody
--  发布时间:2013/6/4 14:51:00
--  
第一个问题,是不是和这个差不多?

 

Dim tpb As WinForm.TopicBar = e.Form.Controls("TopicBar1")
For Each page As WinForm.TopicPage In tpb.Pages
    If page.Name <> e.Page.Name Then
        page.Collapsed = True
    End If
Next


--  作者:lsy
--  发布时间:2013/6/4 15:01:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:tab页面控制.table


--  作者:everybody
--  发布时间:2013/6/4 15:20:00
--  
非常感谢!!!

美中不足,就是隐藏的时候,没有把tab1给排除在外。即:tab1双击的时候,没有动作(即不要隐藏),吼吼

--  作者:jxkqf
--  发布时间:2013/6/4 16:42:00
--  
不错。
--  作者:everybody
--  发布时间:2013/6/4 17:29:00
--  
再顶顶,我把代码贴出来,请大大指教


一、窗口加载时,隐藏除tab1之外的所有tab页。以下代码完美:

For Each pg As WinForm.TabPage In e.Form.Controls("TabControl1").TabPages
    If pg.Text = "Page1" Then
        pg.Visible = True
    Else
        pg.Visible = False
    End If
Next

二、双击页面时,自动关闭(隐藏)当前页(但双击不能隐藏tab1);当只剩tab1时,显示tab1页.

公式2:
e.Sender.SelectedPage.Visible = False

美中不足,就是隐藏的时候,没有把tab1给排除在外。即:tab1双击的时候,没有动作(即不要隐藏),吼吼

求公示2的修改版!!准确说来应该是这样的:

1、双击除tab1的其他tab页时,隐藏所点击的tab页。双击tab1页时,无动作。
2、如果隐藏到只剩一个tab1时,自动显示tab1页。

谢谢大大,这个就是管易顺的导航经典,值得拥有!!!


[此贴子已经被作者于2013-6-4 17:41:23编辑过]

--  作者:everybody
--  发布时间:2013/6/4 18:36:00
--  
每人理?顶顶健康点
--  作者:everybody
--  发布时间:2013/6/4 20:46:00
--  
顶顶健康点
--  作者:gsnake
--  发布时间:2013/6/4 22:05:00
--  
去掉里面的其他代码

再双击中加入 

If e.Sender.SelectedPage.text = "Page1" Then
    e.Sender.SelectedPage.Visible = True
Else
    e.Sender.SelectedPage.Visible = False
End If

--  作者:lsy
--  发布时间:2013/6/5 6:14:00
--  
以下是引用gsnake在2013-6-4 22:05:00的发言:
去掉里面的其他代码

再双击中加入 

If e.Sender.SelectedPage.text = "Page1" Then
    e.Sender.SelectedPage.Visible = True
Else
    e.Sender.SelectedPage.Visible = False
End If

 

If e.Sender.SelectedPage.text <> "Page1" Then
     e.Sender.SelectedPage.Visible = False
End If