易 易虎 Unregistered / Unconfirmed GUEST, unregistred user! 2002-10-31 #1 大家讨论一下,如何实现按照登陆权限的不同,动态的分配菜单。[?] 不知哪位仁兄有,软件开发合同的格式样本,能否给我一份做参考。谢谢! yihu007@sina.com
S spymaster Unregistered / Unconfirmed GUEST, unregistred user! 2002-10-31 #2 我有一个不是分配菜单的而是 菜单可不可用的 具体作法是 t_user t_user_group t_group_right t_right_menu 登录后 遍历所有菜单项 所有都不可用 select c_menu_name from t_right_menu, t_user_group, t_group_right, t_user where ...... 查询出当前用户所在组所有的菜单名称 遍历所有菜单项 如果相同则可用
我有一个不是分配菜单的而是 菜单可不可用的 具体作法是 t_user t_user_group t_group_right t_right_menu 登录后 遍历所有菜单项 所有都不可用 select c_menu_name from t_right_menu, t_user_group, t_group_right, t_user where ...... 查询出当前用户所在组所有的菜单名称 遍历所有菜单项 如果相同则可用
K KOKS Unregistered / Unconfirmed GUEST, unregistred user! 2002-10-31 #3 例如: procedure TCommerce_MAIN_Form.MenuforUser(PowerDegree:Integer); //PowerDegree 权限级别 begin if PowerDegree <300 then begin N101.Visible:=true; N102.Visible:=true; N103.Visible:=true; N104.Visible:=true; N105.Visible:=true; N106.Visible:=true; N201.Visible:=true; N301.Visible:=true; N401.Visible:=true; N601.Visible:=true; N602.Visible:=true; end else begin N101.Visible:=false; N102.Visible:=false; N103.Visible:=false; N104.Visible:=false; N105.Visible:=false; N106.Visible:=false; N201.Visible:=false; N301.Visible:=true; N401.Visible:=true; N601.Visible:=true; N602.Visible:=true; end; end;
例如: procedure TCommerce_MAIN_Form.MenuforUser(PowerDegree:Integer); //PowerDegree 权限级别 begin if PowerDegree <300 then begin N101.Visible:=true; N102.Visible:=true; N103.Visible:=true; N104.Visible:=true; N105.Visible:=true; N106.Visible:=true; N201.Visible:=true; N301.Visible:=true; N401.Visible:=true; N601.Visible:=true; N602.Visible:=true; end else begin N101.Visible:=false; N102.Visible:=false; N103.Visible:=false; N104.Visible:=false; N105.Visible:=false; N106.Visible:=false; N201.Visible:=false; N301.Visible:=true; N401.Visible:=true; N601.Visible:=true; N602.Visible:=true; end; end;
W WiseAnt Unregistered / Unconfirmed GUEST, unregistred user! 2002-10-31 #4 我做过,但因为是公司的,所以我只能在此给你提一下思路,最近很忙,没办法给你做示例。 一、将菜单记录在一个数据表(INI也可以,但不方便)中,我们用的是kmmemTable 二、表中有几个关键的字段,功能(菜单)ID,父菜单ID,菜单名称,项次,权限值 三、在用户登录后,根据此用户所拥有的权限,找出所有可以显示的菜单,生成菜单,生成的 菜单项,使用同一个过程响应其OnClick事件,在其中根据其ID(可以灵活使用Tag值)执行 不同的过程即可。
我做过,但因为是公司的,所以我只能在此给你提一下思路,最近很忙,没办法给你做示例。 一、将菜单记录在一个数据表(INI也可以,但不方便)中,我们用的是kmmemTable 二、表中有几个关键的字段,功能(菜单)ID,父菜单ID,菜单名称,项次,权限值 三、在用户登录后,根据此用户所拥有的权限,找出所有可以显示的菜单,生成菜单,生成的 菜单项,使用同一个过程响应其OnClick事件,在其中根据其ID(可以灵活使用Tag值)执行 不同的过程即可。
易 易虎 Unregistered / Unconfirmed GUEST, unregistred user! 2002-11-01 #5 大富翁都到哪里去啦,尽然只有这么几个人讨论。如果要加分直接告诉我呀
I Iknow Unregistered / Unconfirmed GUEST, unregistred user! 2002-11-01 #6 最简单的,多放几个mainmenu控件,根据不同的登录在显示主界面之前 将menu属性设置成不同的mainmenu控件。 ^_^
L leejoy Unregistered / Unconfirmed GUEST, unregistred user! 2002-11-08 #9 设定用户权限,建立权限菜单表。从中得到菜单项的参数。格式化生成菜单。