Справочник по компонентам Delphi. Часть 2 - Компонент TStringGrid
ОГЛАВЛЕНИЕ
Компонент TStringGrid
TObject -> TPersistent -> TComponent-*TControl -> TWinControl -> -> TCustomControl -> TCustomGrid -> TDrawGrid -> TStringGrid
Модуль GRIDS
Страница Палитры компонентов Additional
Этот компонент реализует возможности своего предка TDrawGrid применительно к таблице строк.
В состав компонента добавлен объект класса TStrings, в котором хранится содержимое ячеек. Он доступен как векторное свойство — двумерный массив текстовых строк (размерностью ColCount x RowCount), соответствующих ячейкам таблицы:
property Cells[ACol, ARow: Integer]: string;
Доступен и двумерньш массив объектов, соответствующих ячейкам:
property Objects[ACol, ARow: Integer]: TObject;
Необходимо помнить, что самих объектов в таблице нет, и программист должен создавать, а по окончании использования таблицы удалять объекты самостоятельно.
Можно работать отдельно как со строками, так и со столбцами таблицы. Свойства
property Cols[Index: Integer]: TStrings;
property Rows[Index: Integer]: TStrings;
описывают наборы строк (также в виде TStrings), содержащие текст и объекты столбцов и строк таблицы.
При значении True свойства DefaultDrawing для этого компонента происходит вывод строки в соответствующей ячейке. Так что если кроме текста ничего отображать не требуется, то менять значение DefaultDrawing и определять обработчик события OnDrawCell не нужно.
Отметим, что перенос строк и столбцов таблицы (при установленных опциях goColMoving или goRowMoving) осуществляется вместе с их текстовыми строками.