- •Введение
- •1 Компоненты Delphi
- •1.1 Компонент класса TEdit
- •1.2 Компонент класса TLabel
- •1.3 Компонент класса TButton
- •1.4 Компонент класса TMemo
- •1.5 Компонент класса TStringGrid
- •1.6 Компонент класса TSpinEdit
- •2 Примеры выполнения практических заданий
- •2.1 Простейшие алгоритмы
- •2.2 Выражения
- •2.3 Циклы
- •2.4 Одномерные массивы
- •2.5 Матрицы
- •2.6 Строки
- •2.7 Записи и файлы
- •2.8 Функции и процедуры
1.3 Компонент класса TButton
Компонент класса TButton (кнопка) расположен в разделе Standard () и предназначен для выполнения требуемых действий. Наиболее часто используются следующие свойства и события данного компонента:
Action. Определяет действие (класса TAction), связанное с кнопкой и управляющее ее свойствами и поведением;
Caption. Определяет текст, который будет отображаться на кнопке. Применение как в компоненте класса TLabel;
Default. Имеет логический тип. При установке в значение True указывает, что при нажатии клавиши Enter будет производиться автоматическое нажатие на данную кнопку, даже если она не является выбранной. На форме может быть только одна кнопка, у которой это свойство установлено в значе-
ние True;
Cancel. Имеет логический тип. При установке в значение True указывает, что при нажатии клавиши Esc будет производиться автоматическое нажатие на данную кнопку, даже если она не является сфокусированной. На форме может быть только одна кнопка, у которой это свойство установлено в значение True;
ModalResult. Используется, если кнопка расположена на диалоговом окне, и позволяет определить метод закрытия формы;
OnClick. событие, возникающее при «нажатии» на кнопку, например при помощи мыши, клавиши Enter, когда кнопка сфокусирована, клавиш Enter или Esc, если у кнопки установлены свойства Default и Cancel соответственно, горячей клавиши кнопки и др. Это основное событие, описание которого требуется при использовании кнопки.
1.4 Компонент класса TMemo
Компонент класса TМемо (простой текстовый редактор) позволяет осуществлять работу со списком строк и может быть использован для работы с одномерными массивами. Компонент расположен в разделе компонентов
Standard ().
Основным используемым свойством компонента является свойство Lines (класс TStrings), описывающее набор строк и методы работы с ними, некоторые из которых приведены ниже:
Lines.Count : integer. Позволяет узнать количество строк, содержащихся в компоненте;
Lines.Strings[Index : integer] : string. Позволяет получить
доступ к строке с указанным индексом Index. При этом, Index=0 – первая строка, 1 – вторая и т.д.;
8
Lines.Add(const s : string) : integer. Добавление в компонент
новой строки s и получение индекса, под которым она добавлена;
Lines.Clear. Удаление всех строк из компонента;
Lines.Delete(Index : integer). Удаление строки с указанным ин-
дексом.
Также полезными свойствами компонента являются:
ReadOnly. Имеет логический тип. При установке в значение True блокирует ручное изменение свойства Lines и применяется, например, для элементов программы, отображающих результаты работы;
ScrollBars. Определяет наличие полос прокрутки в компоненте.
1.5 Компонент класса TStringGrid
Основным назначением компонента класса TStringGrid (таблица
строк), расположенного в разделе компонентов Additional (), является отображение таблицы, каждая из ячеек которой содержит текстовые данные. Так как для любого числа можно получить его строковое представление, компонент вполне подходит для организации работы с двухмерными (матрицами) или одномерными числовыми массивами.
Основными свойствами данного компонента являются:
RowCount, ColCount : integer. Два свойства, с помощью которых можно определить или установить количество строк и столбцов, отображаемых в компоненте. Как правило, установка этих свойств производится либо в режиме разработки программ, если число строк и столбцов в ходе работы программы не меняется, либо во время работы программы с использованием дополнительных компонентов ввода;
FixedRows, FixedCols : integer. Определяют количество строк и
столбцов, используемых для вывода заголовков таблицы. Число таких строк и столбцов должно быть меньше общего числа строк и столбцов (RowCount, ColCount). Особенностью таких строк и столбцов является невозможность редактирования их значений, например с помощью клавиатуры;
Row, Col : integer. Свойства, определяющие номер текущей строки и столбца, соответственно;
Cells[ACol, ARow : integer] : string. Свойство, обеспечиваю-
щее доступ к ячейкам таблицы программным способом. Используя это свойство можно получить или изменить значение ячейки с номером столбца ACol и номером строки ARow;
Options. Свойство типа множество, описывающее параметры работы компонента. Одним из параметров, входящих в данное свойство, является goEditing, установка которого в множестве Options открывает возможность модифицирования пользователем значений в ячейках, например, с помощью
9
клавиатуры. Для упрощения операций по вводу данных в ячейки компонента также может быть установлено в значение True свойство goAlwaysShowEditor. Еще одним полезным параметром является goColSizing позволяющий при установке в значение True пользователю программы изменять ширину колонок компонента класса TStringGrid.
Нумерация строк и столбцов компонента класса TStringGrid начинается с нуля, поэтому если имеется RowCount строк, то их номера – 0RowCount-1.
1.6 Компонент класса TSpinEdit
Компонент расположен в разделе компонентов Samples (). Применяется для организации ввода целых чисел. Основными свойствами компонента являются:
MinValue, MaxValue : integer. Определяют диапазон значений, которые могут быть введены в данном компоненте;
Increment : integer. Задает шаг, с которым изменяется значение в компоненте при использовании стрелок;
Value : integer. Определяет текущее значение компонента.
При работе с компонентом наиболее часто используется событие OnChange, возникающее при изменении значения свойства Value. Ниже приведен пример, позволяющий управлять количеством строк в компоненте клас-
са TStringGrig:
procedure TForm1.SpinEdit1Change(Sender: TObject); begin
StringGrid1.RowCount := SpinEdit1.Value; end;
10