
Лабораторная работа № 5
Тема: Использование визуальных компонентов для программирования массивов.
Цель работы: Приобретение практических навыков программирования массивов.
Используемые программные средства: Delphi.
5.1. Теоретические сведения. Работа с компонентами
Массивом называется упорядоченная индексированная совокупность однотипных элементов, имеющих общее имя. Элементами массива могут быть данные различных типов. Каждый элемент массива одновременно определяется именем массива и индексом (номер этого элемента в массиве) или индексами, если массив многомерный. Количество индексных позиций определяет размерность массива (одномерный, двумерный и т.д.) (Приложение А).
Работу с массивами данных удобно
организовывать в виде таблиц. Для этой
цели предназначены компоненты StringGrid
типа TStringGrid
и DrawGrid
типа TDrawGrid,
отображающие информацию в виде двумерных
таблиц. Компоненты расположены на панели
Additional
Палитры компонентов и имеют
пиктограммы
(StringGrid) и
(DrawGrid).
Компонент DrawGrid позволяет отображать любую (текстовую и графическую) информацию, однако вся работа по визуальному отображению объектов возлагается на разработчиков программы. Компонент StringGrid применяется для работы с текстовой информацией, причем ее отображение и хранение производится компонентом автоматически. В дальнейшем будем рассматривать компонент StringGrid.
Основным элементом таблицы является ячейка, для доступа к которой используется свойство
Cells[ACol,ARow:Integer]:string ,
где ACol и ARow – индексы элемента двумерного массива. Индекс ACol определяет номер столбца, а индекс ARow – номер строки. Свойство Cells доступно только во время выполнения программы. Нумерация элементов таблицы начинается с нуля.
Некоторые свойства для работы с компонентом StringGrid приведены в табл. 5 .1:
Таблица 5 .1. Свойства компонента StringGrid.
ColCount |
число столбцов в таблице |
RowCount |
число строк в таблице |
FixedCols |
число фиксированных столбцов |
FixedRows |
число фиксированных строк |
ColWidths |
ширина столбца в пикселах |
RowHeights |
высота строки в пикселах |
DefaultColWidth |
значение ширины столбца по умолчанию |
DefaultRowHeight |
значение высоты строк по умолчанию |
BorderStyle |
определяет наличие или отсутствие внешней рамки таблицы |
ScrollBars |
параметры отображения полосы прокрутки : |
ssNone |
полоса прокрутки не допускается |
ssHorizontal |
допускается горизонтальная полоса прокрутки |
ssVertical |
допускается вертикальная полоса прокрутки |
ssBoth |
допускаются обе полосы прокрутки |
Options |
опции для доступа к параметрам таблицы для их настройки : |
goVertLine |
отображение в сетке вертикальных разделительных линий |
goEditing |
возможность редактирования содержания ячейки с клавиатуры |
goHorzLine |
отображение в сетке горизонтальных разделительных линий |
В качестве фиксированных элементов используются крайние левые столбцы и верхние строки, что используется при оформлении заголовков. В них запрещен ввод значений с клавиатуры.
Для визуального выделения функционально
связанных компонентов или в качестве
средств визуального группирования
используются компоненты GroupBox
или Panel
.
Компонент
GroupBox
представляет собой прямоугольную
рамку с заголовком
(свойство Caption) в левом верхнем углу
и служит только для объединения
содержащихся в нем элементов.
Компонент Panel
предназначен для объединения
произвольных элементов управления с
возможностями их перемещения по форме
и стыковкой с другими панелями. Кроме
того, компонент
Panel
может использоваться
для создания рамок разнообразного вида
(свойства BevelInner , BevelOuter , BevelWidth компонента).