Borrar una línea o culumna de un TStringGrid

2826 vistas

La clase TStringGrid no tiene ninguna forma directa para borrar una línea. No obstante, si vamos subiendo por la gerarquÃa de la clase hasta llegar a TCustomGrid, vemos que esta clase tiene protegidos unos métodos que nos van a servir, DeleteRow y DeleteColumn.

Para poder acceder a estos métodos tendremos que actuar de la siguiente manera:



delphi
  1. type THackStringGrid = class(TStringGrid);
  2.  
  3. ...
  4.  
  5. procedure TForm1.Button1Click(Sender: TObject);
  6. begin
  7.   // borramos la lÃena n°2 (es la 3era, pues que la 1era es la n°0) :
  8.   THackStringGrid(StringGrid1).DeleteRow(2);
  9.  
  10.   // borramos la segunda columna (columna n°1) :
  11.   THackStringGrid(StringGrid1).DeleteColumn(1);
  12. end;