关于Ehlib的ReadOnly小BUG修正。

王朝delphi·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

Ehlib本来是一个非常不错的控件,但是TDBEditEh的ReadOnly有一些问题,在后续版本之间也尚未修正。经追踪源代码后,发现

procedure TCustomDBEditEh.CMEnter(var Message: TCMEnter);

begin

SetFocused(True);

inherited;

if AutoSelect and not (csLButtonDown in ControlState) then SelectAll;

if SysLocale.FarEast and FDataLink.CanModify then

SetControlReadOnly(False ); //

有问题,关联数据集后将ReadOnly改为True总是可以为修

//改,因此这里出现问。

end;

//再查看Readonly属性声明,域变量FReadOnly 有问题,将改为即可。

SetControlReadOnly(FReadOnly); //将此函数修改

//更早一点的版本我不知道,但是,2.5版本以来就有这个问题,按照此方法可以解决、、ReadOnly问题。

编译包文(Ehlib7.0,或Ehlib6.0,动态包)件即可。如果你用包方式发布,还将编译过的包覆盖原来的BPL文件即可。

另外,为了支持D6,D7特有的扁平风格界面。在单元DBCtrlsEh里的每一个TDBEDITEH,TDBDateTimeEdithEh等等编辑控件加入,

property BevelEdges;

property BevelInner;

property BevelKind default bkNone;

property BevelOuter;

我们在设计期可以设置 BorderStype := bsNone; BevelKind :=bkTile;获得扁平风格;可为你的程序编辑控件添加了不少的风格。

别忘了编译包文件。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航