Компонент StringGrid находится на странице Additionalпалитры компонентов. В том месте находятся дополнительные компоненты, но StringGrid Delphi, на мой взор, хорош большего уважения, Я разместил бы его на странице Standart! StringGrid — компонент для отображения разных данных в табличной форме. Как направляться из заглавия, ячейки компонента StringGrid Delphi смогут содержать эти, имеющие тип String, и отображать графику. |
Таблица StringGrid складывается из выделенных серым FixedCols и FixedRows — зафиксированных ячеек-заголовков, и простых, белых ячеек. Содержимое Fixed ячеек недоступно редактированию, и изменяется лишь программно. За возможность редактирования простых ячеек отвечает одно из значений свойства Options.
Итак, компонент StringGrid имеет возможность адресации каждой отдельной ячейки по номеру строки и столбца. Содержимое ячейки (i, j), где где i — номер столбца, j — номер строчка, имеет форму
StringGrid1.Cells[i, j]
и доступно как для чтения, так и для записи. Тут, как и неизменно, номера столбцов ( i ) и строчков ( j ) отсчитываются от 0.
Выделенная ячейка таблицы имеет
номер столбца: | StringGrid1.Col |
номер строчка: | StringGrid1.Row |
исходя из этого содержимое выделенной ячейки будет адресоваться так:
S:=StringGrid1.Cells[StringGrid1.Col, StringGrid1.Row];
Не правда ли, написание таковой строки — изнурительный процесс. Исходя из этого пользуйтесь оператором присоединения with:
with StringGrid1 не
S:=Cells[Col, Row];
А лучше сходу задать в свойстве Name имя меньше, к примеру SG.
За многие свойства компонента Delphi StringGrid отвечает свойство Options. В Инспекторе Объектов Options — это раскрывающийся перечень, воображающий собой элементы данногомножества
. В случае если значение элемента равняется True, то он присутствует в множестве, в случае если False — то нет.
Свойство | Значение |
goFixedVertLine | Наличие вертикальных разделительных линий между фиксированными ячейками |
goFixedHorzLine | Наличие горизонтальных разделительных линий между фиксированными ячейками |
goVertLine | Наличие вертикальных разделительных линий между простыми ячейками |
goHorzLine | Наличие горизонтальных разделительных линий между простыми ячейками |
goRangeSelect | Возможность выделить диапазон ячеек |
goDrawFocusSelected | Закрашивание ячейки с фокусом ввода |
goRowSizing | Возможность поменять высоту строчков мышкой |
goColSizing | Возможность поменять ширину столбцов мышкой |
goRowMoving | Возможность поменять номер строчка, другими словами перемещать её, мышкой |
goColMoving | Возможность поменять номер столбца, другими словами перемещать его, мышкой |
goEditing | Возможность редактировать содержимое ячейки с клавиатуры |
goTabs | При значении True фокус смещается на следующую ячейку в таблице,False — на следующий компонент |
goRowSelect | Выделяется вся строка с фокусированной ячейкой |
goAlwaysShowEditor | При значении True содержимое ячейки при получении фокуса сходу доступно редактированию, False — сперва нужно щёлкнуть по ней мышкой, или надавить Enter либо F2 (прим.: не действует приgoRowSelect=True) |
goThumbTracking | При значении True перемещение бегунка прокрутки мышкой приводит к немедленному перемещению ячеек,False — ячейки перемещаются лишь при отпускании бегунка |
* Lazarus — Компонент StringGrid — Сохранить и открыть файл