- •Министерство науки и образования российской федерации
- •Лабораторная работа №1
- •Цель работы
- •Среда визуального проектирования Delphi
- •4.1. Форма приложения
- •3.2. Компоненты формы
- •4.3. Событие и обработчик события
- •4.4. Сохранение проекта
- •5. Запуск приложения
- •6. Структура простой программы Delphi
- •7. Усовершенствование приложения
- •8. Задание
- •8. Контрольные вопросы
4.1. Форма приложения
Стартовая форма создается путем изменения свойств (характеристик) формы Forml. Свойства формы определяют ее внешний вид: размер, положение на экране, текст заголовка, вид рамки. Они перечислены на вкладке (странице) Properties (Свойства) окна Object Inspector. В левой колонке перечислены имена свойств, в правой — их значения.
Сначала надо изменить значение свойства Caption (Заголовок) — заменить текст "Forml" на текст "Решение квадратного уравнения". Для этого нужно щелкнуть на поле Caption. В результате этого в правой колонке, где находится текущее значение свойства — текст "Forml", появляется курсор (рис.3).
Рис. 3. Установка свойства путем ввода значения
Используя клавишу <Backspace>, надо удалить текст "Forml" и ввести текст "Решение квадратного уравнения".
Аналогичным образом можно установить значения свойств Height (Высота) и Width (Ширина), которые определяют высоту и ширину формы. Размер формы, а также ее положение на экране задается в пикселях.
При выборе некоторых свойств, например Color (Цвет), которое определяет цвет фона формы, после значения свойства выводится кнопка раскрывающегося списка. В результате щелчка на ней появляется список доступных значений свойства, из которого можно выбрать нужное значение (рис.4).
Помимо обычных свойств у объектов, в том числе и у формы, могут быть вложенные свойства. Перед именем вложенного свойства стоит значок "плюс". При двойном щелчке на имени вложенного свойства раскрывается список уточняющих свойств (рис. 5), а значок "плюс" меняется на "минус".
В поле значения свойства Font (Шрифт) после значения расположена кнопка с тремя точками, при нажатии которой появляется стандартное диалоговое окно Windows выбора шрифта и его характеристик.
Большинство свойств определяют внешний вид формы. Свойство Name (Имя) определяет имя формы, оно используется в программе для управления формой.
Ниже в таблице приведены измененные свойства формы разрабатываемого приложения. Остальные свойства формы оставлены без изменения и в таблице не приведены.
|
|
|
Свойство |
Обозначение |
Значение |
Имя формы |
Name |
Form1 |
Заголовок |
Caption |
Решение квадратного уравнения |
Высота |
Height |
270 |
Ширина |
Width |
370 |
Цвет фона |
Color |
clWhite |
Шрифт |
Font Name |
Arial |
Размер шрифта |
Font Size |
10 |
3.2. Компоненты формы
Программа решения квадратного уравнения должна получить от пользователя исходные данные — значения коэффициентов уравнения. В Windowsданные вводятся в поля редактирования с клавиатуры. Поэтому в нашу форму надо добавить три компонента — три поля редактирования.
Примечание
В Delphi поля редактирования, командные кнопки, поля статического текста и прочие элементы управления, находящиеся в форме, называютсякомпонентами (компоненты формы). В программе форма и компоненты рассматриваются как объекты. Этим можно объяснить то, что окно, в котором находятся свойства компонентов, называется Object Inspector (Инспектор объектов).
Для создания проекта используется следующий минимальный набор компонент.
Button — стандартная кнопка, обычно кнопка используется для запуска действия, при этом задействуют только метод OnEvent (реакция на нажатие). Свойство Default = True ассоциирует вводимый компонент с кнопкой Enter, Cancel = True — с кнопкой Esc. Свойства Color для оформления надписи (Caption) у кнопки нет. Амперсант, помещенный в тексте надписи, указывает быструю Alt — клавишу запуска, например, Caption = A& Ppend вызывает срабатывание кнопки при нажатии Alt-P. Свойство ModalResult = true определит обязательность щелчка мышью кнопки для закрытия дочернего окна.
Label — метка, используется как надпись или как область вывода информации для чтения. Как и для кнопки, для метки можно определить клавишу быстрого доступа, но она будет запускать связанный с меткой компонент (по FocusControl). Свойство AutoSize=True определит минимизацию размера метки под текст надписи, Aligment — центровку этого текста, WordWrap — возможность расположения текста в несколько строк, Transparent —прозрачность при наложении на другие элементы.
Edit — строка ввода. Заголовка (Caption) у этого компонента нет, но есть свойство Text как содержимое строки. Это свойство можно как считывать, так и присваивать (при необходимости с ограничением длины назначением свойства MaxLength). При вводе конфиденциальной информации указывают отображаемые символы (обычно "*").
Чтобы добавить к форме компонент, надо на палитре компонентов щелкнуть на кнопке с нужной пиктограммой, затем — в той точке формы, где должен находиться правый верхний угол компонента. В результате этого на форме появляется компонент стандартного размера.
Добавить к форме компонент нужного размера можно следующим образом. После щелчка на палитре компонентов нужно поместить курсор мыши в ту точку формы, где должен находиться левый верхний угол компонента, нажать кнопку мыши и, удерживая ее нажатой, переместить курсор в точку, где должен быть правый нижний угол компонента, затем отпустить кнопку мыши. В форме появится компонент нужного размера.
На рис. 6 представлен вид формы после добавления к ней трех полей редактирования.
Рис. 6. Форма с тремя компонентами — полями редактирования
Один компонент формы окружен восемью маленькими квадратиками (маркерами выделения). Он называется выделенным (маркированным). Свойства маркированного компонента отображаются в окне Object Inspector. Ниже в таблице перечислены основные свойства компонента "Поле редактирования".
Свойство |
Обозначение |
Имя поля. Используется в программе для доступа к содержимому (тексту) поля
|
Name
|
Текст, находящийся в поле ввода |
Text |
Расстояние от левой границы поля до левой границы формы |
Left |
Расстояние от верхней границы поля до верхней границы формы |
Top |
Высота поля |
Height |
Ширина поля |
Width |
Шрифт, используемый для отображения вводимого текста |
Font |
Признак наследования характеристик шрифта родительской формы |
ParentFont |
Delphi позволяет легко изменить положение и размер компонента. Чтобы изменить положение компонента, надо установить курсор мыши на изображение компонента, нажать левую кнопку мыши и, удерживая ее нажатой, переместить изображение границы компонента в нужную точку формы; затем отпустить кнопку мыши.
Чтобы изменить размер компонента, надо его выделить, (щелкнуть на изображении компонента), позиционировать курсор мыши на одном из маркеров компонента, нажать левую кнопку мыши и, удерживая ее нажатой, изменить положение границы компонента; затем отпустить кнопку мыши.
Так же, как свойства формы, свойства компонента можно изменить в окне Object Inspector. Чтобы свойства нужного компонента появились в окнеObject Inspector, надо выделить нужный компонент или выбрать его имя из раскрывающегося списка объектов, кнопка раскрытия которого находится в верхней части окна Object Inspector (рис. 7).
|
|
|
Ниже приведены свойства полей редактирования нашего проекта.
Свойство |
Объект |
| ||||
Поле |
Поле |
Поле |
| |||
для коэф. А для коэф. В для коэф. С |
| |||||
Name |
Editl |
Edit2 |
Edit3 | |||
Text |
|
|
| |||
Top |
88 |
88 |
88 | |||
Left |
24 |
136 |
248 | |||
Height |
24 |
24 |
24 | |||
Width |
81 |
81 |
81 |
| ||
|
|
|
|
|
|
Помимо полей редактирования окно формы должно содержать поясняющий текст: краткое информационное сообщение и пояснение рядом с каждым полем редактирования — для ввода какого коэффициента это поле предназначено.
Текст, находящийся непосредственно в форме, — это метка. Добавляется метка к форме точно так же, как и поле редактирования. Кнопка с пиктограммой метки (большой буквой А) находится в палитре компонентов перед кнопкой поля редактирования. После того как метка добавлена, можно, используя Object Inspector, изменить свойства метки.
К форме разрабатываемого приложения надо добавить пять меток: одна (Label2) будет представлять собой информационное сообщение, три (Label3,Label4, Label5) — тексты, поясняющие назначение полей редактирования, и одна (Label1) будет использоваться для вывода значений корней уравнения. После добавления меток форма разрабатываемого приложения приобретает вид, представленный на рис. 8.
Рис. 8. Вид формы после добавления меток
Ниже в таблицах приведены свойства меток Label1 и Label2.
Name |
Label1 |
Label2 |
Caption |
|
Уравнение задается коэффициентами |
AutoSize |
True |
True |
Top |
136 |
8 |
Left |
24 |
40 |
Height |
16 |
17 |
Width |
4 |
272 |
ParentFont |
|
False |
FontName |
|
Arial |
FontSize |
|
11 |
Свойство ParentFont метки Label2 имеет значение False, поэтому свойство Font этой метки не наследует значения свойства Font "родителя", в данном случае — свойства основной формы. Это дает возможность установить свойства шрифта метки иные, чем у формы. У других меток значение свойстваParentFont оставлено без изменения.
Если свойство AutoSize (автоматический подгон размера) имеет значение True, то Delphi автоматически устанавливает размеры метки в зависимости от количества символов текста метки, используемого шрифта и его размера. Если надо, чтобы метка представляла собой текст из нескольких строк, то свойству AutoSize надо присвоить значение False и вручную установить значения свойств, определяющих ее размер. Ниже приведены свойства метокLabel3, Label4 и Label5.
Name |
Label3 |
Label4 |
Label5 |
Caption |
При второй степени (а) |
При первой степени (b) |
При нулевой степени (с) |
AutoSize |
False |
False |
False |
Top |
48 |
48 |
48 |
Left |
24 |
136 |
248 |
Height |
41 |
41 |
41 |
Width |
81 |
81 |
81 |
WordWrap |
True |
True |
True |
В заключение к форме надо добавить командные кнопки. Кнопки добавляются к форме точно так же, как и другие компоненты. Пиктограмма командной кнопки ( на ней изображена кнопка ОК ) находится на палитре стандартных компонентов. После добавления кнопок с помощью Object Inspector надо установить требуемые значения свойств, которые представлены в следующей_таблице
Name |
Button1 |
Button2 |
Button3 |
Caption |
Вычислить |
Новое |
Завершить |
Top |
208 |
208 |
208 |
Left |
24 |
130 |
220 |
Height |
25 |
25 |
25 |
Width |
81 |
81 |
81 |
Окончательный вид формы приложения представлен на рисунке 9.
Рис. 9. Форма приложения для решения квадратного уравнения