关于Grid动态添加列的代码??? ( 积分: 50 )

  • 主题发起人 主题发起人 幽悠白书
  • 开始时间 开始时间

幽悠白书

Unregistered / Unconfirmed
GUEST, unregistred user!
一种:
dbgrid1.Columns.add; //动态添加列
dbgrid1.Columns.Items[1].FieldName:='id' //动态指定列的字段
//以此类推
第二种
for i:=0 to self.qry1.Fields.count-1 do
begin
dbgrid1.Columns.add; //动态添加列
dbgrid1.Columns.Items.FieldName:='id' //动态指定列的字段
end;
第三种:
有没有这样一种方法:
比如
aa:=Tcolumns.create()//????????
aa.fieldname:='id';//
aa.title.caption:='ssss';//?????????????

不太懂?谁写出来哦?
 
一种:
dbgrid1.Columns.add; //动态添加列
dbgrid1.Columns.Items[1].FieldName:='id' //动态指定列的字段
//以此类推
第二种
for i:=0 to self.qry1.Fields.count-1 do
begin
dbgrid1.Columns.add; //动态添加列
dbgrid1.Columns.Items.FieldName:='id' //动态指定列的字段
end;
第三种:
有没有这样一种方法:
比如
aa:=Tcolumns.create()//????????
aa.fieldname:='id';//
aa.title.caption:='ssss';//?????????????

不太懂?谁写出来哦?
 
不是TColumns,而是TColumn,Columns可以看成是数组,Column是元素
aa:=TColumn.create(DBGrid.Columns);
aa.fieldname := 'id';
aa.title.caption := 'ssss';
自己看看关于TColumn的帮助
 
procedure DBGridFixedValue(a: array of String; DBGrid: TDBGrid; DataSet:TDataSet);
var
i: integer;
begin
if not DataSet.Active then Exit;
if High(a) > DataSet.RecordCount - 1 then Exit;
DBGrid.Columns.Clear;
For i := Low(a) to High(a) do
begin
DBGrid.Columns.Add.Title.Caption := '';
DBGrid.Columns.FieldName := DataSet.Fields.FieldName;
DBGrid.Columns.Title.Caption := a;
end;
end;
 
procedure DBGridFixedValue(a: array of String; DBGrid: TDBGrid; DataSet:TDataSet);
var
i: integer;
begin
if not DataSet.Active then Exit;
if High(a) > DataSet.RecordCount - 1 then Exit;
DBGrid.Columns.Clear;
For i := Low(a) to High(a) do
begin
DBGrid.Columns.Add.Title.Caption := '';
DBGrid.Columns.FieldName := DataSet.Fields.FieldName;
DBGrid.Columns.Title.Caption := a;
end;
end;
 
procedure DBGridFixedValue(a: array of String; DBGrid: TDBGrid; DataSet:TDataSet);
var
i: integer;
begin
if not DataSet.Active then Exit;
if High(a) > DataSet.RecordCount - 1 then Exit;
DBGrid.Columns.Clear;
For i := Low(a) to High(a) do
begin
DBGrid.Columns.Add.Title.Caption := '';
DBGrid.Columns.FieldName := DataSet.Fields.FieldName;
DBGrid.Columns.Title.Caption := a;
end;
end;
 
多人接受答案了。
 
后退
顶部