譬如说用户为管理员、老师、学生
用户为管理员、老师时,显示考勤管理按钮
用户为学生就隐藏考勤管理按钮
首先,根据登陆的用户判断权限;
其次,根据不同的权限,显示不同的菜单项。这个需要用到“动态菜单”的技巧。如:
VC++中动态生成菜单技巧
如何动态添加菜单/菜单项、子菜单、右键菜单
如何隐藏已有的菜单项?
一种是动态添加需要的菜单,没有权限得不添加
一种是隐藏,菜单项有失效和隐藏等属性,设置要隐藏的菜单项的visible属性为false即可实现隐藏
做个登陆相关的,根据用户配置不同的权限,这样根据这个权限变量就可以控制菜单的显示隐藏了
根据权限的不同,控制不同的状态,按钮可以用ShowWindow,也可以EnableWindow,
菜单项可以添加ON_UPDATE_COMMAND_UI() pCmdUI->EnableWindow(TRUE/FALSE);禁用或者启用。
看您的菜单是否有很多的不同,如果只有几个,则根据不同的权限在ON_UPDATE_COMMAND_UI中设置就可以了。
如果有很多,则要使用动态添加菜单。
估计楼主已经解决了,我的做法是使用DeleteMenu(MENUID,MF_BYCOMMAND); 把不需要显示的菜单项去掉。
?