以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]请教快捷菜单(右键菜单)问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=126749)

--  作者:tkxffb
--  发布时间:2018/10/28 9:34:00
--  [求助]请教快捷菜单(右键菜单)问题
各位老师,正在做一个人事管理项目,在职人员和离职人员的信息都在同一个“人员信息表”上,通过判断“任职状态”列是“在职”或“离职”,用按钮分别实现在职或离职人员的显示或隐藏。我的问题是,在设计右键快捷菜单时,怎么根据“在职”或“离职”使右键显示不同的快捷菜单。下面是我在表事件BeforeShowContextMenu中写的代码,但是不能用,请问该怎么写,请指教

If DataTables(" 人员信息表").datacols("任职状态") = "在职"
    e.ContextMenu = ContextMenus("在职右键菜单")
Else
    e.ContextMenu = ContextMenus("离职右键菜单")
End If

--  作者:y2287958
--  发布时间:2018/10/28 9:47:00
--  
If e.Table.Current("任职状态") = "在职"
    e.ContextMenu = ContextMenus("在职右键菜单")
Else
    e.ContextMenu = ContextMenus("离职右键菜单")
End If

--  作者:tkxffb
--  发布时间:2018/10/28 9:54:00
--  
问题解决了,感谢y2287958老师!点赞图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看
--  作者:tkxffb
--  发布时间:2018/10/28 10:16:00
--  
y2287958老师,抱歉,又有一个问题,在人员信息表为空时,单击右键会报错,我加了下面的判断,可是仍然报错

If e.Table.Current("任职状态") = "在职"    \'----如果任职状态列内容为在职
    If Tables("人员信息表").Rows.Count = 0 Then    \'---如果是空表

    Else   
        e.ContextMenu = ContextMenus("在职右键菜单")    \'---显示在职右键菜单
    End If
Else   
    If Tables("人员信息表").Rows.Count = 0 Then    \'---如果是空表
        
    Else  
        e.ContextMenu = ContextMenus("离职右键菜单")
    End If
End If
[此贴子已经被作者于2018/10/28 10:16:38编辑过]

--  作者:tkxffb
--  发布时间:2018/10/28 10:31:00
--  
问题解决了,把上面的代码调整了一下:

If Tables("人员信息表").Rows.Count = 0 Then    \'---如果是空表
   msgbox("空表不能使用右键菜单!") \'---给出一个提示
Else   
    If e.Table.Current("任职状态") = "在职"    \'----如果任职状态列内容为在职
        e.ContextMenu = ContextMenus("在职右键菜单")    \'---显示在职右键菜单
    Else   
        e.ContextMenu = ContextMenus("离职右键菜单")
    End If
End If

--  作者:y2287958
--  发布时间:2018/10/28 10:52:00
--  
If e.Table.Current IsNot Nothing
    If e.Table.Current("任职状态") = "在职"  
        e.ContextMenu = ContextMenus("在职右键菜单")
    Else
        e.ContextMenu = ContextMenus("离职右键菜单")
    End If
End If

--  作者:tkxffb
--  发布时间:2018/10/28 11:42:00
--  
还是y2287958老师的代码简洁好用,谢谢指教!
[此贴子已经被作者于2018/10/28 11:42:38编辑过]