Foxtable(狐表)用户栏目专家坐堂 → 请教:如何遍历菜单得到狐表所有菜单项目的名称?


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

主题:请教:如何遍历菜单得到狐表所有菜单项目的名称?

帅哥,在线噢!
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106385 积分:541066 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/22 9:31:00 [显示全部帖子]

需要使用递归

For Each rb As RibbonMenu.Tab In RibbonTabs
Output.Show(rb.name)
    For Each gp As RibbonMenu.Group In rb.Groups
Output.Show(gp .name)
        For Each itm As RibbonMenu.RibbonItem In gp.Items
Output.Show(itm .name)
--------在递归中实现
        For Each itm2 As RibbonMenu.RibbonItem In itm.Items
            Output.Show(itm2.Name)
        Next
---------
        Next
    Next
Next


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106385 积分:541066 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/22 10:13:00 [显示全部帖子]

--------只有这段代码需要放到函数中
        For Each itm2 As RibbonMenu.RibbonItem In itm.Items
            Output.Show(itm2.Name)
        Next
---------

 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106385 积分:541066 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/22 10:32:00 [显示全部帖子]

判断一下菜单类型,可以有下级菜单的,才进入递归

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106385 积分:541066 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/22 10:56:00 [显示全部帖子]

都说了先判断,再进入函数呀

 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106385 积分:541066 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/22 11:38:00 [显示全部帖子]

先转换为对应的类型再用呀,类似这种

For Each c As WinForm.Control In e.Form.Controls
    If
 Typeof c Is WinForm.TextBox Then '判断控件是否是文本框
        
Dim t As WinForm.TextBox = c '使用特定类型的变量引用控件
        t.Value = 
Nothing
    End
 If
Next

 回到顶部