Delphi中动态创建DataSet数据集,并响应AfterDelete事件

来源:互联网 发布:linux下wget命令安装 编辑:程序博客网 时间:2024/06/08 14:44

    在自己的开发过程中碰到要动态创建Dataset数据集,并且能够响应各类事件,例如AfterDelete事件。具体如下:

 

第一部分:创建DataSet

 

function TMainForm.CreateDataSet: TDataSet;

var

dsTemp:TDataSet;

cdsTemp: TClientDataSet;

begin

//初始化

dsTemp := TDataSet.Create(Application);

try

    //字段名设置

    with dsTemp.FieldDefs do

    begin

      Add('STID',ftInteger);

     //其他字段根据要求定义

    end;

    //创建DataSet

    cdsTemp := TClientDataSet.Create(Application);

    if dsTemp.FieldDefs <> nil then

    begin

      cdsTemp.FieldDefs.Assign(dsTemp.FieldDefs);

      cdsTemp.CreateDataSet;

      result := (cdsTemp as TDataSet);

    end;

finally

    //内存释放

    dsTemp.Free;

end;

end;

 

第二部分:添加记录

Function TMainForm.AddDataToSet(AdsData: TDataSet): TDataSet;

begin

//打开数据集

AdsData.Open;

with AdsData do

begin

      Append;//添加

      FieldByName('STID').AsInteger := 2 ;

      post;//提交

end;

end; }

 

第三部分:调用和事件的响应

    BDataSet:=CreateDataSet;

    BDataSet.AfterDelete:=BAfterDelete;

 

    事件:

    produce BAfterDelete(DataSet:TDataSet);

   begin

   showmessage('Hello world');

  end;

原创粉丝点击