比如:我的DBGrid中
    aa  bb  cc
    12  1    3
    54  78   9
    1    6   6
我想获得bb那个列中所有的值放在一个ss中,也就是ss:=1786怎么做?谢谢~!

解决方案 »

  1.   

    var strlist:array of string;
    var i:integer;
    begin
        SetLength(strlist,DBGrid1.DataSource.DataSet.FieldCount-1);
        for i:=0 to DBGrid1.DataSource.DataSet.FieldCount-1 do
        strlist[i]:=DBGrid1.DataSource.DataSet.Fields[i].AsString;end;
      

  2.   

    begin
        ss := "";
        DBGrid1.DataSource.DataSet.first;
        while not DBGrid1.DataSource.DataSet.eof do
        begin
          ss:=ss+trim(DBGrid1.DataSource.DataSet.Fieldbyname["bb"].AsString);
          DBGrid1.DataSource.DataSet.next;
        end;end;
      

  3.   

    ss := "";
    ss:=ss+trim(DBGrid1.DataSource.DataSet.Fieldbyname["bb"].AsString);--------------------------------------------------------------------
    楼上的见过在delphi里有用双引号的吗,  垃圾处理
      

  4.   

    select count(bb) as ss from table
      

  5.   

    var 
      strList: array of string;
      bm: TBook;
      b: Boolean;
      i: Integer;
    begin
      SetLength(strList, DBGrid1.DataSource.DataSet.RecordCount);
      i := 0;
      b := DBGrid1.DataSource.DataSet.ControlDisabled;
      bm := DBGrid1.DataSource.DataSet.GetBook;
      DBGrid1.DataSource.DataSet.DisableControls;
      try
        DBGrid1.DataSource.DataSet.First;
        while not DBGrid1.DataSource.DataSet.Eof do
        begin
          strList[i] := DBGrid1.DataSource.DataSet.Fieldbyname['bb'].AsString;
          DBGrid1.DataSource.DataSet.next;
        end;
      finally
        DBGrid1.DataSource.DataSet.GotoBook(bm);
        DBGrid1.DataSource.DataSet.FreeBook(bm);
        if not b then DBGrid1.DataSource.DataSet.EnableControls;
      end;
    end;
      

  6.   

    Sorry,漏了一句DBGrid1.DataSource.DataSet.Next;
    Inc(i);