以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何控制任务栏(topicbar)只打开一个页面  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=4239)

--  作者:擎天柱
--  发布时间:2009/9/6 14:22:00
--  如何控制任务栏(topicbar)只打开一个页面
如题,我想:单击当前页面的时候,其它的页面都折叠收起,不知怎么写代码。设有5个页面:1,2,3,4,5,将以下代码加到click事件,可将其它页面折叠收起,但无法对当前页面进行控制。
for i as byte=0 to 4
Forms("窗口1").Controls("TopicBar1").Pages(i).Collapsed = true
next

--  作者:mr725
--  发布时间:2009/9/6 14:33:00
--  
 这个对你有用吗?:

TopicLink

表示一个任务栏中的任务。
通过页面的TopicLinks属性,可以访问指定位置或名称的任务。

示例
Dim
tl1 As WinForm.TopicLink
Dim
tl2 As WinForm.TopicLink
tl1 = Forms(
"窗口1").Controls("TopicBar1").Pages(0).Links(0)
tl2 = Forms(
"窗口1").Controls("TopicBar1").Pages("项目").Links("打开")

[此贴子已经被作者于2009-9-6 14:33:23编辑过]

--  作者:擎天柱
--  发布时间:2009/9/6 14:43:00
--  
以下是引用mr725在2009-9-6 14:33:00的发言:
 这个对你有用吗?:

TopicLink

表示一个任务栏中的任务。
通过页面的TopicLinks属性,可以访问指定位置或名称的任务。

示例
Dim
tl1 As WinForm.TopicLink
Dim
tl2 As WinForm.TopicLink
tl1 = Forms(
"窗口1").Controls("TopicBar1").Pages(0).Links(0)
tl2 = Forms(
"窗口1").Controls("TopicBar1").Pages("项目").Links("打开")

[此贴子已经被作者于2009-9-6 14:33:23编辑过]

这个没用的。关键是不知如何获取当前选择的页面,而非指定页面。我试着将代码写到MOUSEDOWN里,凑合着用,不过感觉还是比较别扭,特别是最后一个页面,鼠标按下本来是要打开,结果因其他页面收缩导致最后一个页面离开鼠标,致click无效不能展开最后一个页面。
其实,就是有点类似于卷帘式菜单的那种效果。


--  作者:擎天柱
--  发布时间:2009/9/6 15:10:00
--  
感觉想实现的功能根本就行不通