以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 窗口菜单问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=149808) |
-- 作者:jiewei -- 发布时间:2020/5/12 18:25:00 -- 窗口菜单问题 递归函数: Dim mnu As object = args(0) Dim cs As DataTable = args(1) Dim mc As String = args(2) For Each dr As DataRow In cs.Select("id = \'lr_001\' And 上级名称 = \'" & mc & "\'","顺序") If dr IsNot Nothing Then Dim itm As WinForm.StripItem itm = mnu.Items(dr("名称")) If dr("控件类型") = "菜单" Then mnu.Items.Add(dr("名称"),dr("标题文本"),dr("图标") ,StripItemTypeEnum.MenuItem) End If If dr("控件类型") = "按钮" Then mnu.Items.Add(dr("名称"),dr("标题文本"),dr("图标") ,StripItemTypeEnum.Button ) End If If dr("控件类型") = "组合按键" Then mnu.Items.Add(dr("名称"),dr("标题文本"),dr("图标"),StripItemTypeEnum.SplitButton) End If If dr("控件类型") = "分割条" Then mnu.Items.Add(dr("名称"),dr("标题文本"),dr("图标"),StripItemTypeEnum.Separator) End If If dr("控件类型") = "标签" Then mnu.Items.Add(dr("名称"),dr("标题文本"),dr("图标"),StripItemTypeEnum.Label) End If Functions.Execute("生成子控件",itm,cs,dr("名称")) End If For Each sit As WinForm.StripItem In mnu.Items sit.DisplayText = True sit.TextPosition =TextPositionEnum.Right Next
Next [此贴子已经被作者于2020/5/12 18:27:50编辑过]
|
-- 作者:有点蓝 -- 发布时间:2020/5/12 20:23:00 -- 不要在菜单里添加按钮类型的菜单。可以添加到工具栏里 |
-- 作者:jiewei -- 发布时间:2020/5/12 21:21:00 -- 放在工具栏和菜单状态都一样,有没有办法改进? |
-- 作者:有点蓝 -- 发布时间:2020/5/12 21:42:00 -- 也不要放到工具栏的下拉菜单里,凡是菜单都不要放按钮,放MenuItem |