易截截图软件、单文件、免安装、纯绿色、仅160KB

权限控制(delphi actionlist)

权限控制(delphi TActionList方案)
在软件开发中,为软件加入权限控制功能,使不同的用户有不同的使用权限,是非常重要的一项功能,
由其在开发数据库方面的应用,这项功能更为重要。
但是,要为一个应用加入全面的权限控制功能,又怎样实现呢?
大家知道,现在的应用,一般均以菜单访问功能的形式出现,按照常规的做法,
只要让注册进入应用的不同用户,可以访问不同的功能菜单,从而实现功能权限的控制,
但是,有这样一个问题,此种方法便无能为力,现在的应用软件,为了提高软件的易操作性,
同一功能可能有多种不同的访问方式,如工具条,右键菜单等;
同样,同一个功能,也可能在软件的不同地方被调用,而不仅仅被限制为用程序的主菜单来调用,
这样,才能保证应用的易用性。
写到这,问题已经非常清楚,对于要限制的软件功能,仅通过一次代码设计,
无论在整个应用的任何地方或通过何种形式调用此功能,都能被功能权限所限制。
笔者利用Delphi平台作应用开发时,通过Delphi7提供的VCL控件解决了这一问题。
在了解如何实现功能权限控制之前,得先看一下Delphi7提供的新控件TActionList,
通过TActionList,应用程序可以统一管理其TAction,这里的Action,可以理解为应用程序的功能。
在应用的设计期间,可以通过TActionList编辑器将功能(Action)加入TActionList,
将Action加入TActionList后,就可能通过Object Inspector设置Action的属性或为其建立事件句柄。
在这里,我们可以用Action的OnExecute事件句柄实现具体的功能,如下代码来显示一个操作窗体:
procedure TfrmMain.SetUserExecute(Sender: TObject);
begin
   frmUser.showModal;
end;
  当要限定这一功能时,可能利用TAction的Enabled,将其设为False,此功能对于用户将被屏蔽掉,
如果要此功能对用户不可见,则可以设定Visible为False。
  当成功能的建立了TActionList后,可能有人问,如果使用其中的Action,
在Delphi7中,象TButton、TMenuItem、TSpeedButton、TRadioButton等控件,均有一个属性Action,
正是通过它,我们可以将Menu或Button连接到TActionList中TAction,从而实现功能按钮或菜单的功能。
在理解了Delphi中的TActionList及TAction之后,就可以看看功能权限的具体实现方法。
第一步,建立两张表,一张表存储用户信息,另一张表存储权限定义。
用户信息表User结构如下:
UserID(String/用户的ID号,为表关键字)
UserName(String用


相关文档:

如何让Delphi调用外部程序并等待其运行信息(如结束)

函数一:
view plaincopy to clipboardprint?
uses 
    Windows,  
    SysUtils,  
    Classes,  
    ShellAPI;  
function RunAndWait(FileName: string; Visibility: Integer): THandle;&nbs ......

在delphi 2010 上安装 RemObjects 6.0.39.777

作为delphi的铁杆,在正式Delphi2010推出后,我当然也要尝尝新鲜,用电驴下来以后安装。呵呵二十多分钟就搞定了,启动也特快,简单使用一下,棒棒!!看来Delphi(太阳神)又回来了,如是我决定抛弃delphi2007,用这个新家伙。我所用的第三方组件主要是RemObjects和reportbuilder,reportbuilder还没有找到安装forD2009 Ful ......

delphi中使用透明控件的几种方法

有时需要使用透明控件用于捕获鼠标消息
1.调用Windows2000,xp新的API函数实现这一功能的过程。使用SetLayeredWindowAttributes
2.直接设置控件的alphablend,alphablendvalue,间接调用上述api.
3.使用TStaticText控件
procedure WMCtrlColor(var Message: TWMCtlColor); message WM_CTLCOLOR;
procedure TForm3.WMCtr ......

Delphi常用控件命名规范

 常用控件命名前缀
控件类名
前缀
TForm等窗体类 
frm
TButton, TSpeedButton等所有的按钮类 
btn
TCheckBox等所有的检查框 
chk
TRadioButton单选按钮类
rdo
TListBox等所有的列表框类 
lst
TPanel等所有的面板类
pnl
TLabel, TStaticText等所有用来显示的标签类 
lbl
TE ......

delphi canvas使用

在DELPHI为编程者提供了一个灵活的绘图场所,即本文所述的   
CANVAS类,在DELPHI中的很多控件都具有此属性,使编程者可以   
在这些的控件的表面随心所欲的绘图,这对完善用户界面或者制   
作一些屏幕特技都有着非凡的作用,下面举例说明几种特殊屏幕    ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号