我想在一个TDataSet动态增加Field,该怎么做?怎么试都不试不出来,只是闪了一下就没有了
With TField.Create(DataSet)   do
      begin
        Index:=ClientDM.cdsFieldDef['iGridOrder'];
        FieldKind:=fkData;
        FieldName:=ClientDM.cdsFieldDef['FieldName'];
        DisplayLabel:=ClientDM.cdsFieldDef['DisplayName'];
        DisplayWidth:=ClientDM.cdsFieldDef.FieldByName ('iGridWidth').AsInteger;
        Visible:=ClientDM.cdsFieldDef.FieldByName('bShowInGrid').AsBoolean;
      end;

解决方案 »

  1.   

    http://borland.mblogger.cn/aiirii/posts/4852.aspxbtw3 就有說到
      

  2.   

    procedure TForm1.BitBtn1Click(Sender: TObject);
    var
      myDataSet:TClientDataSet;
    begin
      myDataSet := TClientDataSet.Create(application);
      myDataSet.FieldDefs.Add('name',ftstring,10);
      myDataSet.FieldDefs.add('age',ftinteger);
      myDataSet.CreateDataSet;          //建立
      myDataSet.Active;
      myDataSet.AppendRecord(['張三',10]);
      myDataSet.AppendRecord(['李四',40]);
    end;(是要这个吗?)