属性 (Property) 介绍
Active: Boolean,当此 DataLink 连结至一个已开启的 DataSource 时会传回 True。当 Active 状态改变时会 触发ActiveChanged方法。
ActiveRecord: Integer(可读写),用来配置或取得 DataLink 缓冲区中目前所指向的记录代码,代码的范围是 0 .. BufferCount - 1。使用它来配置记录代 码 时必须小心不要超过这个范围,否则可能导致不可预期的错误。
BufferCount: Integer(可读写),DataLink 拥有一个数据缓冲区。而 BufferCount 属性即用来配置或取得缓冲区大小,缓冲区大小决定了一个dataset同时可以显视的数据记录笔数。对大部分的数据感知元件来说,BufferCount 的值是 1;但对 TDataGrid 来说,BufferCount 代表它的可视列数目。
DataSet: TDataSet(唯读),传回此 DataLink 所连结的 DataSet。其实就是DataSource.DataSet。
DataSource: TDataSource(可读写),传回此DataLink所连结的DataSource
DataSourceFixed: Boolean(可读写),这个属性可用来防止 DataSource 属性被更改。如果此属性设为 True,当我们试着改变 DataSource 属性时会引发一个例外。
Editing: Boolean(唯读),如果 DataLink 正处於编辑状态则传回 True
ReadOnly: Boolean(可读写),配置 DataLink 是否为唯读状态。这个属性并不会影响所连结的 DataSet。在唯读状态下这个 DataLink 无法进入编辑状态。
RecordCount: Integer(唯读),传回DataSet的数据记录数目
方法 (Method) 介绍
function Edit: Boolean;让所连结的DataSet进入编辑状态。传回值: 成功传回 True ,失败传回 False
procedure UpdateRecord;我们不直接调用这个方法,它是提供其它程序来调用的。这个方法只有配置一个旗帜然後调用 UpdateData 方法。
虚拟方法 ( Virtual Method )
要让 TDataLink 组件与构件沟通必须改写下列这些方法:
procedure ActiveChanged,当连结的 DataSource 开启状态改变时会调用此方法。使用 Active 属性可以得知目前是否为开启状态。
procedure CheckBrowseMode,数据库有任何改变之後都会先调用这个方法。
procedure DataSetChanged;当下列任一事件发生时都会调用此方法:
u 移至DataSet的开头
u 移至DataSet的结尾
u 在DataSet中插入或新增数据
u 删除DataSet的数据
u 取消DataSet的编辑
u 更新记录
如果不想改写这个方法只要在其中调用:
RecordChanged(nil);
procedure DataSetScrolled(Distance: Integer),每当目前记录变更时会调用此方法。Distance 叁数代表缓冲区欲卷动的行数。(其值范围皆在 -1 .. 1 之间)。使用 ActiveRecord 属性可以取得缓冲区中目前所指向的记录。我们无法强制让 DataLink 的缓冲区卷动。
procedure FocusControl(Field: TFieldRef),与TField.FocusControl方法相同。
procedure EditingChanged,当 DataLink 的编辑状态改变时会调用此方法。使用 Editing 属性可以得知DataLink 是否 正处於编辑状态。
procedure LayoutChanged,当 DataSet 的 Layout 改变时会调用此方法(例如新增一个column)。
procedure RecordChanged(Field: TField),当下列任一事件发生时都会调用此方法:
§ 目前记录进入编辑状态
§ 目前记录内容更动
procedure UpdateData,在一笔记录被更新以前会调用此方法。你可以调用 Abort 过程来防止数据库更新。