Foxtable(狐表)用户栏目专家坐堂 → [求助] 如何遍历窗口菜单所有项


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

主题:[求助] 如何遍历窗口菜单所有项

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


加好友 发短信
等级:六尾狐 帖子:1312 积分:9533 威望:0 精华:0 注册:2015/6/30 8:46:00
[求助] 如何遍历窗口菜单所有项  发帖心情 Post By:2018/3/30 13:46:00 [只看该作者]

    Dim itn() As String = {"主菜单","快捷菜单1","快捷菜单2","快捷菜单3","快捷菜单4","快捷菜单5"}

如果我有比较多的菜单。应该怎么获取,我现在是手动录入

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


加好友 发短信
等级:六尾狐 帖子:1312 积分:9533 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2018/3/30 14:09:00 [只看该作者]

  For Each st As WinForm.Strip In e.Form.Strips

    For Each vit As WinForm.StripItem In st.Items

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/3/30 14:45:00 [只看该作者]


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


加好友 发短信
等级:六尾狐 帖子:1312 积分:9533 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2018/10/9 14:49:00 [只看该作者]

老师,如果有二级或三级函数,如何传递StripItem 

内部函数
Dim str As String
'For Each st As WinForm.Strip In Forms(args(0)).Strips
For Each it As WinForm.StripItem In it.items
    If str > "" Then str &= "|"
    str &= it.Name
    If IT.Items.Count > 0 Then    Functions.Execute("遍历所有菜单",it)
Next
'Next
Return str
窗口代码
Dim str As String
For Each st As WinForm.Strip In e.Form.Strips
    For Each it As WinForm.StripItem In st.Items
        If str > "" Then str &= "|"
        str &= it.Name
        If IT.Items.Count > 0 Then  str &=  Functions.Execute("遍历所有菜单",it)
    Next
Next
e.Sender.Text = str
str = Nothing

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/10/9 15:09:00 [只看该作者]

Dim pit = args(0)
Dim ls = args(1)

For Each it As WinForm.StripItem In pit.items
    ls.add(it.Name)
    If it.items IsNot Nothing Then Functions.Execute("遍历所有菜单",it, ls)
Next

 

--------------

 

Dim ls As new List(Of String)
For Each st As WinForm.Strip In e.Form.Strips
    Functions.Execute("遍历所有菜单",st,ls)
Next
msgbox(String.Join("|", ls.ToArray))


 回到顶部