本人从事开发时间也不短了,也做过不少大大小小的项目,当中数数据库方面的项目较多,在一般情况下,做一个项目都会涉及取"权限设置"的问题,现本人想证求大家的综合意见,求得一最佳的方案,然后做成dll并共享之,以供大家开发中可利用,从而避免走弯路。   大概需求:
   1:主窗体(MainFrm),利用ActionManager来调用各子模块,所以只以控制ActionManager的各项的enabled即可;
   2:各子模快下面都都有不同的按钮(Btn),所以也要控制按钮(Btn)的Enabled,当然也有类同如按钮的如Edit等,也要能加以控制;
   3:通过角色和用户的关系来设置权限(这点不在此讨论范围内,因为大家都清楚了);
   4:要求设置操作方便,如采用树型结构供用户选择权限,同一模块的怎么排列等;如果可以将ActionManager下所以的子模块(包括子模块下的要控制的内容如Btn,Edit等)以树型结构列出来供用户来设置权限将更加好。  现征求的是方案(最好以面向对象的思想来设计)而不是源代码,本人选出最佳的方案并送分。

解决方案 »

  1.   

    权限: 整型数 0,1,2...分别代表不同的权限在主窗体创建的时候case 当前用户的权限 of
      0:...//在此对ActionManager的各项Enabled 进行设置, 以及各个字模块的控制
      1:...
       ....
    end;
      

  2.   

    TO
    postren(小虫) 
    太简单了
      

  3.   

    進入君的Application(主窗体)時、需要用户認証嗎?
    若有認証数据库、可在用户情報表中、分成不同的权限級別、
    然後判定、控制...
      

  4.   

    try
    {
    http://expert.csdn.net/Expert/topic/2180/2180181.xml?temp=.5318415
    }
    catch(...)
    {
    ShowMessage('用0和1算了');
    }
      

  5.   

    大概需求:
       1:主窗体(MainFrm),利用ActionManager来调用各子模块,所以只以控制ActionManager的各项的enabled即可;
       2:各子模快下面都都有不同的按钮(Btn),所以也要控制按钮(Btn)的Enabled,当然也有类同如按钮的如Edit等,也要能加以控制;
       3:通过角色和用户的关系来设置权限(这点不在此讨论范围内,因为大家都清楚了);
       4:要求设置操作方便,如采用树型结构供用户选择权限,同一模块的怎么排列等;如果可以将ActionManager下所以的子模块(包括子模块下的要控制的内容如Btn,Edit等)以树型结构列出来供用户来设置权限将更加好。
      

  6.   

    数据库字段。。比如 读   写   删除  修改    建这四个字段名如果需要相应的权限 用一个boolean 判断 是否为true  为true 代表有这个权限。没有就不执行。。或者一个整型变量  当为1 时 为2时 为3时 为4时。所代表的各自权限也不一样。。