大家有没有作过这样的问题,就是就是将DataSet的一列值存入,不能用循环的方式。

解决方案 »

  1.   

    var
       StringList : TStrings;
    begin
       StringList := TStrings.Create;
       StringList.Add('String One');
       ...
       StringList.Free;
    end;用那个Add方法就行了。
      

  2.   

    楼上的理解错了:)我的意思是不用循环的方式,直接把一列(DataSet中的多行数据)加入到StringList中啊,
      

  3.   

    StringList是可以把另一个Strings的实例对象直接放进去,可问题是你的dataset中的某一列我想不出如何直接得到(不做循环)
      

  4.   

    s := TList.Create;
     AdoDataSet.GetFieldList(s, 'Name');
      

  5.   

    s := VarArrayCreate([0,1000], varOleStr);
    s:=CurveDataSet.Lookup('Name', VarArrayOf(['sssss']), 'Name');
      

  6.   

    procedure savetolist(fieldindex:integer;list:Tstrings);
    begin
    list.clear;
    with dataset do
    begin
      first;
      while not eof do
      begin
        list.add(fields[fieldindex].asstring);
        next;
      end;
    end;
    end;
      

  7.   

    assign方法里面还不是循环,
    怕麻烦写不出好程序