procedure TMain.btn_runClick(Sender: TObject);
var
  query_acc,query_sql,query_sql2:TADOquery;
  content_acc,Str_content:string;
  param1,param2,param3,param4,param5,param6:string;
  FieldValue:string;
  width,rowcount:integer;
  i,j,k:integer;
  sql_ini:string;
  process,position,one:integer;
begin  Button1.Caption:='进行比对';
  DataSourcePath:=edt_path.Text;
  readini;
/  sg_data.ColCount:=6;
/  sg_data.RowCount:=2;
/  for i:=0 to 5 do
/    sg_data.Cells[i,2]:='';在这里我是想每次运行按钮的时候,把sg_data的行和列重新改变为初始的两行,但是为什么还是没有变化,比如上次结果显示为3行,这次为1行,但是它仍然显示3行,不解!

解决方案 »

  1.   

    是不是其它地方有问题,如果执行了sg_data.RowCount:=2;是会马上变得
      

  2.   

    //---如果你不想要原来的数据的话,最好是先清除原来的数据.
    for i:=1 to sg_data.rowcount-1 do//----保留下表头
      for j:=0 to sg_data.colcount-1 do
         sg_data.cells[j,i]:='';sg_data.rowcount:=2;//-----表格只保留2行.
      

  3.   

    sg_data.ColCount:=6;
      sg_data.RowCount:=2;
      for i:=0 to 5 do
        sg_data.Cells[i,2]:='';
      
      Application.ProcessMessages;  ...