我已经建立了一个访问数据库并将其与ADOquery
和Datasource
连接。我已经建立了一个名为BagCost
的表,该表的字段名称为bag size
和{{1 }}。我已将cost
附加到表单中,并将其与“ Bagcost”表链接。 DBgrid
具有以下字段:
如何在运行时显示从dbgrid列到不同的Dbgrid
的四项费用?
答案 0 :(得分:0)
说明:
我希望我能正确理解你。您需要做的是从四个记录中的每一个读取数据。使用First
和Next
方法更改活动记录,使用Eof
方法测试活动记录是否是数据集中的最后一条记录。 (对于大量记录,可以选择使用DisableControls
和EnableControls
方法来防止每次活动记录更改时数据感知控件都进行更新。
示例:
接下来是一个基本示例,该示例使用AfterOpen
事件从查询的每个记录中读取字段值。
procedure TfrmMain.qryAfterOpen(DataSet: TDataSet);
begin
DataSet.DisableControls;
try
DataSet.First;
if not DataSet.Eof then Edit1.Text := DataSet.FieldByName('cost').AsString else Edit1.Text := 'Record not found';
DataSet.Next;
if not DataSet.Eof then Edit2.Text := DataSet.FieldByName('cost').AsString else Edit2.Text := 'Record not found';
DataSet.Next;
if not DataSet.Eof then Edit3.Text := DataSet.FieldByName('cost').AsString else Edit3.Text := 'Record not found';
DataSet.Next;
if not DataSet.Eof then Edit4.Text := DataSet.FieldByName('cost').AsString else Edit4.Text := 'Record not found';
DataSet.First;
finally
DataSet.EnableControls;
end{try};
end;