直接改给ROWCOUNT赋值,就可更改行数

解决方案 »

  1.   

    删除某行/列,在某行/列插入新的一行/列,方法如下:procedure TExCell.InsertColumn(ACol: Integer);
    begin
      ColCount :=ColCount +1;
      MoveColumn(ColCount-1, ACol);
    end;procedure TExCell.InsertRow(ARow: Integer);
    begin
      RowCount :=RowCount +1;
      MoveRow(RowCount-1, ARow);
    end;procedure TExCell.DeleteColumn(ACol: Longint);
    begin
      MoveColumn(ACol, ColCount -1);
      ColCount := ColCount - 1;
    end;procedure TExCell.DeleteRow(ARow: Longint);
    begin
      MoveRow(ARow, RowCount - 1);
      RowCount := RowCount - 1;
    end;
      

  2.   

    没有MoveRow和MoveColumn方法呀。
      

  3.   

    有这两个方法,不过不能在外部访问。
    就象madfish 那样说的,你自己建一个组件继承自TStringGrid ,
    就这么改两下就行了。
      

  4.   

    对的, MoveRow 和 MoveColumn 是 TCustomGrid 的 protected 方法.
    你需要创建自己的控件, 
    TExCell = class(TStringGrid)
    public
       procedure DeleteRow(ARow: Longint);
       procedure DeleteColumn(ACol: Longint);
       procedure InsertRow(ARow: LongInt);
       procedure InsertColumn(ACol: LongInt);
    end;