阅读 100

Delphi的DataSource事件

Delphi的DataSource事件 
procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField); //数据源记录移动触发 
begin

end;

procedure TForm1.DataSource1StateChange(Sender: TObject); //时刻监视着数据源的状态 
var s:String; 
begin 
// TDataSetState = (dsInactive, dsBrowse, dsEdit, dsInsert, dsSetKey, 
// dsCalcFields, dsFilter, dsNewValue, dsOldValue, dsCurValue, dsBlockRead, 
// dsInternalCalc, dsOpening); 
Case DataSource1.State of 
dsInactive: s:=’Inactive’; //数据集被关闭 
dsBrowse: s:=’Browse’; //浏览模式 
dsEdit: s:=’Edit’; //编辑模式,意味着Edit方法已被调用,而编辑后的数据尚未被提交 
dsInsert: s:=’Insert’; //插入模式,即Insert被调用,但变化还没有提交 
dsSetKey: s:=’SetKey’; //设置键值模式,意味着SetKey被调用,而GotoKey尚未被调用 
dsCalcFields: s:=’CalcFields’; //OnCalcFields事件已发生,对记录值的计算正在进行中 
dsFilter: s:=’Filter’; //数据集正在处理一个记录过滤器、查找字段或其他需要用到过滤器的操作 
dsNewValue: s:=’NewValue’; //数据集处于NewValue属性被访问的临时状态 
dsOldValue: s:=’OldValue’; //数据集处于OldValue属性被访问的临时状态 
dsCurValue: s:=’CurValue’; //数据集处于CurValue属性被访问的临时状态 
dsBlockRead: s:=’BlockRead’; //数据正被写入缓冲区,此时数据库表中指针的移动并不触发数据感知组件的更新和事件的发生 
dsInternalCalc: s:=’InternalCalc’; //一个字段值正在被计算,以供一个有fkInterternalCalc类型的Fieldkind属性的字段使用 
dsOpening: s:=’Opening’; //数据集处于正在打开状态但是还没有结束,这种状态发生在数据集被异步打开时 
End; 
Label1.Caption:=s; 
end;

原文:https://www.cnblogs.com/jijm123/p/14056031.html

文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐