Foxtable(狐表)用户栏目专家坐堂 → 导航栏 的页面指向问题


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

主题:导航栏 的页面指向问题

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


加好友 发短信
等级:婴狐 帖子:56 积分:515 威望:0 精华:0 注册:2012/8/17 15:48:00
导航栏 的页面指向问题  发帖心情 Post By:2012/8/31 19:56:00 [只看该作者]

请教一个navbar(导航栏)和tapcontrol( 页面集合)使用的问题。

 


图片点击可在新窗口打开查看此主题相关图片如下:5.jpg
图片点击可在新窗口打开查看

我设计了一个窗口,用导航栏上页面 指向 不同的几个页面集合,我的代码是

 

Dim bar As WinForm.NavBar = e.sender
Select Case bar.SelectedPage.ButtonText
    Case "订单明细"
        e.Form.Controls("mtab").Visible = False  ‘(mtab,ctab,vtab,stab,ftab,otab 都是页面集合,我改了显示名称)
        e.Form.Controls("ctab").Visible = False
        e.Form.Controls("vtab").Visible = False
        e.Form.Controls("stab").Visible = False
        e.Form.Controls("ftab").Visible = False
        e.Form.Controls("otab").Visible = True
    Case "产品"
        e.Form.Controls("otab").Visible = False
        e.Form.Controls("ftab").Visible = False
        e.Form.Controls("ctab").Visible = False
        e.Form.Controls("vtab").Visible = False
        e.Form.Controls("stab").Visible = False
        e.Form.Controls("mtab").Visible = True     
    Case "外商"
        e.Form.Controls("mtab").Visible = False
        e.Form.Controls("ftab").Visible = False
        e.Form.Controls("otab").Visible = False
        e.Form.Controls("vtab").Visible = False
        e.Form.Controls("stab").Visible = False
        e.Form.Controls("ctab").Visible = True
    Case "供货商"
        e.Form.Controls("mtab").Visible = False
        e.Form.Controls("ftab").Visible = False
        e.Form.Controls("otab").Visible = False
        e.Form.Controls("ctab").Visible = False
        e.Form.Controls("stab").Visible = False
        e.Form.Controls("vtab").Visible = True
    Case "货运订舱"
        e.Form.Controls("mtab").Visible = False
        e.Form.Controls("ftab").Visible = False
        e.Form.Controls("otab").Visible = False
        e.Form.Controls("ctab").Visible = False
        e.Form.Controls("vtab").Visible = False
        e.Form.Controls("stab").Visible = True
    Case "财务处理"
        e.Form.Controls("mtab").Visible = False
        e.Form.Controls("stab").Visible = False
        e.Form.Controls("otab").Visible = False
        e.Form.Controls("ctab").Visible = False
        e.Form.Controls("vtab").Visible = False
        e.Form.Controls("ftab").Visible = True
End Select

 

我自己感觉很麻烦,有没有什么办法可以简化。

 

另外: 我不知道是否可以将以上的TAPCONTROL 做成一个一个窗口(不和导航栏在主窗口里),用控件或者代码在主窗口中相应位置处

          导入这些TAPCONTROL 的窗口,这样编辑文件会比较简单。

 

          我这么想是否可以?

[此贴子已经被作者于2012-8-31 19:56:41编辑过]

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


加好友 发短信
等级:三尾狐 帖子:760 积分:4714 威望:0 精华:0 注册:2011/12/17 18:37:00
  发帖心情 Post By:2012/8/31 20:00:00 [只看该作者]

你隐藏页面 用代码切换不行吗?

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


加好友 发短信
等级:婴狐 帖子:56 积分:515 威望:0 精华:0 注册:2012/8/17 15:48:00
关联表 中的数据整理  发帖心情 Post By:2012/8/31 20:11:00 [只看该作者]

请教如何切换呢?

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


加好友 发短信
等级:婴狐 帖子:56 积分:515 威望:0 精华:0 注册:2012/8/17 15:48:00
  发帖心情 Post By:2012/9/1 7:29:00 [只看该作者]

恳请高手解答。


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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/9/1 8:45:00 [只看该作者]

e.Form.Controls("otab").Visible  = (bar.SelectedPage.Butt)

e.Form.Controls("mtab").Visible = (bar.SelectedPage.Butt)

......


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/9/1 8:48:00 [只看该作者]

这样的问题的话,确实没有太便捷的方法了(要是,实现也麻烦了点)

你可以通过“命名规范”来缩减代码。

比如 导航页的名称命名为"pg1_tab1" 然后 对应的页面集合命名为“tab1”

这样,就可以通过一段代码去实现你的需求

思路是 显示点击的那个导航页的名称中的”tab1"页面,其余的页面隐藏起来。(通过遍历页面集合)

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


加好友 发短信
等级:婴狐 帖子:56 积分:515 威望:0 精华:0 注册:2012/8/17 15:48:00
  发帖心情 Post By:2012/9/1 16:02:00 [只看该作者]

谢谢各位。

 

我还有一个问题:

 

另外: 我不知道是否可以将以上的TAPCONTROL 做成一个一个窗口(不和导航栏在主窗口里),用控件或者代码在主窗口中相应位置处

导入这些TAPCONTROL 的窗口,这样编辑文件会比较简单。

我这么想是否可以?


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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/9/1 17:50:00 [只看该作者]

可以:

 

If Forms("窗口名").Opened Then

    Forms("窗口名").Controls("otab").Visible = (bar.SelectedPage.ButtonText = “订单明细")

    Forms("窗口名").Controls("mtab").Visible = (bar.SelectedPage.ButtonText = “产品”)

End If

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


加好友 发短信
等级:婴狐 帖子:56 积分:515 威望:0 精华:0 注册:2012/8/17 15:48:00
  发帖心情 Post By:2012/9/1 18:15:00 [只看该作者]

非常感谢。

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


加好友 发短信
等级:婴狐 帖子:56 积分:515 威望:0 精华:0 注册:2012/8/17 15:48:00
  发帖心情 Post By:2012/9/1 20:17:00 [只看该作者]

狐爸,我运行你的代码,还是有些问题。

 

我的设计是:将导航栏指向的部分(以下橘色部分),可否另做几个单独的窗口对应导航栏的几个选择BUTTON,用代码指引到主窗口的橘色部分里。

 

1.)橘色部分:只是在主窗口的一部分中;


图片点击可在新窗口打开查看此主题相关图片如下:6.jpg
图片点击可在新窗口打开查看

 

2.)单独的窗口(和主窗口分开),分别对应导航栏的选择键(例如:订单明细)


 


图片点击可在新窗口打开查看此主题相关图片如下:7.jpg
图片点击可在新窗口打开查看

 

可否做到以上要求呢?

 

如果你的代码是可以体现以上的设计要求,请问这个代码应该体现在 导航栏选择键 的事件 SELECTINDEXCHANGED?

不好意思,我是初学者,很多地方请教。


 回到顶部
总数 30 1 2 3 下一页