继承TDBGridEh的TitleBtnClick事件出现找不到方法? ( 积分: 50 )

  • 主题发起人 主题发起人 bbscom
  • 开始时间 开始时间
B

bbscom

Unregistered / Unconfirmed
GUEST, unregistred user!
在写控件时,继承TDBGridEh的TitleBtnClick事件出现找不到方法?
procedure TitleBtnClick(ACol: Integer; Column: TColumnEh); [red]override;//override这个地方出错;;[/red]
...
procedure TDBGridE.TitleBtnClick(ACol: Integer; Column: TColumnEh);
begin // 主要是排序功能
Inherited;
if Self.DataSource.DataSet is TCustomADODataSet then
if TCustomADODataSet(Self.DataSource.DataSet).Sort = Column.FieldName + ' ASC' then
TCustomADODataSet(Self.DataSource.DataSet).Sort := Column.FieldName + ' DESC'
else TCustomADODataSet(Self.DataSource.DataSet).Sort := Column.FieldName + ' ASC';
end;
下面出现的提示:
Build
[Error] DBGridE.pas(27): Method 'TitleBtnClick' not found in base class
[Fatal Error] Package1.dpk(71): Could not compile used unit 'DBGridE.pas'
 
是procedure DoTitleClick(ACol: Longint; AColumn: TColumnEh); dynamic;
哪有procedure TitleBtnClick(ACol: Integer; Column: TColumnEh);
 
s00000000001,你好!再请教一个问题,怎么知道TDBGridEh里有数据?
也就是说,当ADOQUERY.OPEN时,数据就会在TDBGridEh里显示,这时候我就想知道它里面有数据了,但我怎么通过TDBGridEh知道里有数据显示呢?
 
DataSource.DataSet.RecordCount
 
我的意思是当ADOQUERY.OPEN时TDBGridEh里会显示数据的,当TDBGridEh里有数据就怎么激活一个事件。
其实功能就好像一个消息SendMessage,它会自动运行另一个事件,不需要人工去按它。
 
接受答案了.
 
后退
顶部