以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  快捷菜单中如何对子菜单进行控制  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=158936)

--  作者:李孝春
--  发布时间:2020/12/7 20:10:00
--  快捷菜单中如何对子菜单进行控制
快捷菜单中如何对子菜单进行控制

当前listview如果没有选择有效行  则该子菜单不允许被点击

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

当快捷菜单中的是标准项目的时候 则可以通过点击事件代码进行控制
Dim lvw As WinForm.ListView = Forms("党建工作").Controls("ListView1")
Dim vr As WinForm.ListViewRow = lvw.Current \'获取ListView的当前行
If vr IsNot Nothing Then \'如果不存在当前行,也就是内有选定任何一行
    Vars("姓名") = vr.Text
    Forms("党员信息").open
Else
    MessageBox.Show("请在图标上单击【人员查看】查看信息!","温馨提示")
End If


有没有代码实现对快捷菜单中的子菜单进行控制 并且延申到子菜单下的二级菜单也可以控制呢?

--  作者:有点蓝
--  发布时间:2020/12/7 20:21:00
--  

If
 e.Button = MouseButtons.Right Then \'假定按下的是鼠标右键
Dim lvw As WinForm.ListView = Forms("党建工作").Controls("ListView1")
Dim vr As WinForm.ListViewRow = lvw.Current \'获取ListView的当前行
If vr IsNot Nothing Then \'如果不存在当前行,也就是内有选定任何一行
    ContextMenus("快捷菜单名").items("子菜单").Visible = false
Else
    ContextMenus("快捷菜单名").items("子菜单").Visible = true
End If
    ContextMenus("快捷菜单名").Show(e.Sender,e.x,e.y) \'则在鼠标位置显示快捷菜单
End
 
If

--  作者:李孝春
--  发布时间:2020/12/8 1:53:00
--  回复:(有点蓝)http://www.foxtable.com/webhelp/to...
有点蓝  老师 有没有代码可以直接生成快捷菜单并指定子菜单的chick事件例子么
目前我在菜单设计里面弄的子菜单项目至少有四十个 操作起来很麻烦 有没有办法直接代码生成

--  作者:有点蓝
--  发布时间:2020/12/8 8:46:00
--  
参考:http://www.foxtable.com/webhelp/topics/1133.htm