怎么动态的给DBGrid加标题?
是这样吗?
DBGrid1.Columns.item[0].Title.caption:='1';我用DBGrid1.Columns.item[1].Title.caption:='1';为什么会提示错误?

解决方案 »

  1.   

    应是这样吧
    DBGrid1.Columns[1].Title.caption:='1';为什么会提示错误?
      

  2.   

    我贴一个自己写的函数,功能就是动态添加列的
    procedure SetDbgrid(Dataset:Tdataset;Dbgrid:Tdbgrid;ArrField:Array of string;ArrDisplaylabel:Array of string);
    var
      maxindex:integer;
      i:integer;
    begin
      maxindex:=high(ArrField);  {关键,否则程序会自动根据全部字段生成column}
      dbgrid.Columns.State:=csCustomized;
      dbgrid.Columns.Clear;
      for i:=0 to maxindex do
      begin
        Dataset.FieldByName(ArrField[i]).DisplayLabel:=ArrDisplayLabel[i];
        with dbgrid.Columns.Add do
        begin
          FieldName:=ArrField[i];
          Title.Alignment:=taCenter;
          Color:=clCaptionText;
        end;
      end;
    end;
      

  3.   

    DBGrid1.Columns[0].Title.caption:='1';
      

  4.   

    DBGrid1.Columns[0].Title.caption:='1';