- •Севастопольский национальный униВеРситЕт ядерной энергии и промышленности инструктивно-методические указания
- •Севастополь
- •Заведующий кафедрой кс
- •Лабораторная работа №3
- •2. Основная часть 70 мин.
- •В результате проведения практического занятия студенты должны
- •Приложение 1 Работа с таблицами
- •Массивы
Приложение 1 Работа с таблицами
TStringGrid – текстовая таблица
Компонент TStringGrid предназначен для создания таблиц, в ячейках которых располагаются произвольные текстовые строки. Таблица делится на две части – фиксированную и рабочую. Фиксированная часть служит для показа заголовков колонок и рядов, а так же для ручного управления их размерами. Обычно фиксированная часть занимает левую колонку и верхний ряд таблицы, однако с помощью свойств FixedCols и FixedRows можно задать другое количество фиксированных колонок и рядов.
Рабочая часть – это остальная часть таблицы. Она может содержать произвольное количество колонок и рядов, более того, эти величины могут изменяться программно. Если рабочая часть таблицы не помещается целиком на экране, то автоматически появляется полоса прокрутки.
Свойства компонента:
Свойство |
Описание |
BorderStyle |
Определяет рамку компонента: bsNone – нет рамки, bsSingle – рамка толщиной 1 пиксел |
Cells[col,row] |
Определяет содержимое ячейки с табличными координатами (col,row) |
Col |
Содержит номер колонки с ячейкой, имеющей фокус ввода |
ColCount |
Содержит количество колонок таблицы |
ColWidths |
Содержит ширину колонки с индексом Index |
EditorMode |
Разрешает/запрещает редактирование ячеек. Игнорируется, если свойство Options включает значение goAlwayseShowEditor или не включает значение goEditing |
FixedColor |
Определяет цвет фиксированной зоны |
FixedCols |
Определяет количество колонок фиксированной зоны |
FixedRows |
Определяет количество рядов фиксированной зоны |
GridHeight |
Содержит значение высоты таблицы |
GridLineWidth |
Определяет ширину линий, расчерчивающих таблицу |
GridWidth |
Содержит значение ширины таблицы |
Row |
Содержит номер ряда ячейки, имеющий фокус ввода |
RowCount |
Содержит количество рядов таблицы |
RowHeights |
Содержит значение высоты ряда с индексом Index |
Rows |
Содержит все текстовые строки ряда с индексом Index |
ScrollBars |
Определяет полосы прокрутки: ssNone – нет полос; ssHorizontal – в таблицу вставляется горизонтальная полоса; ssVertical – вставляется вертикальная полоса; ssBoth – вставляются обе полосы. |
Для обращения к ячейке [0,0] нужно использовать свойство Cells:
StringGrid1.Cells[0,0]:=IntToStr(5)
Массивы
Массив – упорядоченный набор однотипных значений – компонент массива. Тип компонент называется базовым типом массива.
В Delphi массив рассматривается как переменная структурированного типа. Массиву присваивается имя, посредством которого можно ссылаться на него, как на единое целое, так и на любую из его компонент.
Описание массивов
VAR <имя переменной>:ARRAY [<type1, type2,…>] OF <type>;
[<type1, type2,…>] – типы индексов
<type> - базовый тип
Количество типов индексов определяет размерность массива. Тип индексов может быть любым, кроме Real. Базовым типом может быть любой тип данных.
Примеры описания массивов
Var a: array[1..10] of integer; - последовательность целых чисел
Var t: array[1..2,1..2] of real; - таблица 2х2.
Var a1: array [‘A’..’Z’] of word;
Обращение к элементам массива
a[1] – первый элемент из массива a.
t[1,2] – элемент из первой строки второго столбца.
Индексы можно задавать либо конкретными значениями, либо выражениями.
i:=1; a[i] - первый элемент из массива a; a[i+1] – второй элемент массива а.
В динамических массивах не указывается размерность в описании:
Например, var a: array of integer;
Размерность устанавливается в теле программы: SetLength(a, 10); - длинна массива а – 10 элементов.