你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:杂志经典 / 跟高手学编程
权限管理与系统登录(十五)
 

“查询与统计”菜单中的各个子菜单项的OnClick事件采用了事件共享技术,共用NSearchClick事件,通过菜单项对象的Tag属性值加以识别。“查询功能”菜单项OnClick事件的代码如下:

procedure TFormMain.NSearchClick(Sender: TObject);

begin // 查询功能

 With FormSearchAchievement do begin

  BtnSearch.Tag := (Sender As TMenuItem).Tag; // 传递查询类别

  case BtnSearch.Tag of

   0 : SBtnStatistics.Caption:='统计报表';

   2..3 : SBtnStatistics.Caption:=(Sender As TMenuItem).Caption;

  end;

  ShowModal;

 end;

end;

最后编写主界面的OnClose事件,系统退出时关闭打开的数据集,代码如下:

procedure TFormMain.FormClose(Sender: TObject; var Action: TCloseAction);

begin

 with DMServerDB do begin

   ADODataSetUserRole.Close;

   ADODataSetRole.Close;

   ADODataSetRoleRight.Close;

 end;

end;

相关用户登录后,系统将按管理员分配给他的用户权限设置菜单项的可用性,如图9所示。


9 用户登录后的主界面

4 总结

系统的使用权限涉及到系统数据的安全,因此是数据库应用系统必须要考虑的问题,文中给出了一个对象使用权限自动添加和设置的通用过程和函数,并提供一个用户权限分配界面,用于完成登录用户使用权限的分配与管理。由于篇幅有限,本文仅给出了菜单项对象的使用权限分配,但已预留了接口,读者可以参考AddRoleRightSetObjRight过程,设置其他对象的使用权限,为适合每个界面中对象使用权限的分配和使用,可以在RoleRight角色权限表中增加一个字段FormClass,用于表示该对象所在的窗体类,如此就可以对应用程序中所有窗体类中定义的所有菜单、按钮进行使用权限的分配和管理。

 

  推荐精品文章

·2024年12月目录 
·2024年11月目录 
·2024年10月目录 
·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089