Лабораторна робота №2
ТЕМА: Створення додатків ОС Windows в ІСР Delphi.
МЕТА: Навчитися створювати додатки, що складаються з кількох форм.
Теоретичні відомості.
Стартова форма створюється шляхом зміни значень властивостей форми Form1 і додавання до форми необхідних компонентів (полів введення й виводу тексту, командних кнопок).
Властивості форми визначають її зовнішній вигляд: розмір, положення на екрані, текст заголовка, вид рамки. Для перегляду й зміни значень властивостей форми і її компонентів використається вікно Object Inspector. У верхній частині вікна Object Inspector відображене ім'я об'єкта, значення властивостей якого відображається в цей момент. У лівій колонці вкладки Properties (Властивості) перераховані властивості об'єкта, а в правій — зазначені їхні значення.
Таблица 1–Властивості форми (об'єкта Form1)
Властивість |
Опис |
Name |
Ім'я форми. У програмі ім'я форми використається для керування формою й доступу до компонентів форми. |
Caption |
Текст заголовка. |
Width |
Ширина форми. |
Height |
Висота форми. |
Top |
Відстань від верхньої межі форми до верхньої межі екрана. |
Left |
Відстань від лівої межі форми до лівої межі екрана. |
BorderStyle |
Вид границі. Границя може бути звичайною (bsSizeable), тонкою (bsSingle) або відсутньою (bsNone). Якщо у вікна звичайна границя, то під час роботи програми користувач може за допомогою миші змінити розмір вікна. Змінити розмір вікна з тонкою границею не можна. Якщо границя відсутня, то на екран під час роботи програми буде виведене вікно без заголовка. Положення й розмір такого в час роботи програми змінити не можна. |
Borderlcons
|
Кнопки керування вікном. Значення властивості визначає, які кнопки керування вікном будуть доступні користувачеві під час роботи програми. Значення властивості задається шляхом присвоєння значень уточнюючим властивостям biSystemMenu, biMinimіze, biMaximіze та biHelp. Властивість biSystemMenu визначає доступність кнопки Згорнути й кнопки системного меню, biMinimіze – кнопки Згорнути, biMaximіze – кнопки Розгорнути, biHelp – кнопки виводу довідкової інформації. |
Icon
|
Значок у заголовку діалогового вікна, що позначає кнопку виводу системного меню. |
Color
|
Кольори фону. Кольори можна задати, указавши назву кольорів або прив'язку до поточної колірної схеми операційної системи. У другому випадку кольори визначається поточною колірною схемою, обраним компонентом прив'язки та змінюється при зміні колірної схеми операційної системи. |
Font |
Шрифт. Шрифт, використовуваний "за замовчуванням" компонентами, що перебувають на поверхні форми. Зміна властивості Font форми приводить до автоматичної зміни властивості Font компонента, що розташовується на поверхні форми. Тобто компоненти успадковують властивість Font від форми (є можливість заборонити спадкування). |
При створенні стартової форми в першу чергу варто змінити значення властивості Сaption (Заголовок). Щоб це зробити, потрібно у вікні Object Inspector клацнути мишею на рядку Caption, у результаті чого буде виділене поточне значення властивості, у рядку з'явиться курсор, і можна буде ввести текст заголовка .
Палітра Компонент дозволяє вибрати потрібні об'єкти для розміщення їх на стартовій формі (Forml). Найбільше часто використовувані компоненти перебувають на вкладці Standard (рисунок 5).
Для того щоб додати у форму компоненти, необхідно в палітрі компонентів вибрати , клацнувши лівою кнопкою миші на його піктограмі, далі встановити курсор в ту точку форми, в якій повинен бути його лівий верхній кут , і ще раз клацнути лівою кнопкою миші. Як результат на формі з'являється компонент стандартного розміру і ним можна маніпулювати за допомогою миші.
Палітра Компонент використовує посторінкове угрупування об'єктів. Внизу Палітри знаходиться набір закладок - Standard, Additional, Dialogs і т.д. Якщо клацнути мишею на одну із них, то можна перейти на наступну сторінку Палітри Компонент. Принцип розбиття на сторінки широко використовується в середовищі програмування Delphi і його легко можна використовувати в своїй програмі. (На сторінці Additional є компоненти для організації сторінок із закладками зверху і знизу).
Рисунок 1–Палітра Компонент.
В Delphi існує декілька компонентів, які дозволяють з використанням клавіатури вводити в програму і редагувати різну символьну інформацію. Вони мають можливість виділяти, копіювати, знищувати, вставляти фрагменти тексту. Рядок введення Edit дозволяє вводити і редагувати один рядок тексту.
У табл.2 перераховані основні властивості компонента Edit - поля введення-редагування.
Таблиця 2–Властивості компонента Edit (поле введення-редагування)
Властивість |
Опис |
Name |
Ім'я компонента. Використовується в програмі для доступу до компонента і його властивостей, зокрема — для доступу до тексту, введеному в поле редагування. |
Text |
Текст, що перебуває в полі введення й редагування. |
Left |
Відстань від лівої границі компонента до лівої границі форми. |
Top |
Відстань від верхньої границі компонента до верхньої границі форми. |
Height |
Висота поля. |
Width |
Ширина поля. |
Font |
Тип шрифту, що використовується для відображення тексту |
ParentFont |
Ознака наслідування компонентом характеристик шрифту форми, на якій перебуває компонент. Якщо значення властивості дорівнює True, то при зміні властивості форми Font автоматично міняється значення властивості Font компонента. |
Крім полів редагування у вікні програми повинна бути коротка інформація про програму та призначення полів введення. Для виводу тексту у форму використають поля виводу тексту. Поле виводу тексту (поле статичного тексту) — це компонент Label класу ТLabel. Значок компонента Label знаходиться на вкладці Standard (рисунок 5). Додається компонент Label у форму точно так само, як і поле редагування.
Властивості компонента Label перераховані в табл. 3.
Таблиця 3–Властивості компонента Label (поле виводу тексту)
Властивість |
Опис |
Name |
Ім'я компонента. Використовується в програмі для доступу до компонента і його властивостей. |
Caption |
Відображуваний текст. |
Font |
Шрифт, використовуваний для відображення тексту. |
ParentFont |
Ознака наслідування компонентом характеристик шрифту форми, на якій знаходиться компонент. |
AutoSize |
Ознака того, що розмір поля визначається його змістом. |
Left |
Відстань від лівої границі поля виводу до лівої границі форми. |
Top |
Відстань від верхньої границі поля виводу до верхньої границі форми. |
Height |
Висота поля виводу. |
Width |
Ширина поля виводу. |
Wordwrap |
Властивість автоматичного переносу слів на наступний рядок. |
Варто звернути увагу на властивості Autosize і Wordwrap. Ці властивості потрібно використовувати, якщо поле виводу повинне містити кілька рядків тексту. Після додавання до форми компонента Label значення властивості Autosize дорівнює True, тобто розмір поля визначається автоматично в процесі зміни значення властивості Сaption. Якщо необхідно, щоб текст, що розміщується в полі виводу, займав кілька рядків, то треба відразу після додавання до форми компонента Label привласнити властивості Autosize значення False, властивості Wordwrap – значення True. Потім зміною значень властивостей Width і Height потрібно задати необхідний розмір поля. Тільки після цього можна ввести у властивість Caption текст, що повинен бути виведений у поле.
Командна кнопка, компонент Button , додається у форму так само, як і інші компоненти. Значок компонента Button знаходиться на вкладці Standard (рисунок 5). Властивості компонента наведені в табл. 4.
Таблиця 4–Властивості компонента Button (командна кнопка)
Властивість |
Опис |
Name |
Ім'я компонента. Використовується в програмі для доступу до компонента і його властивостей |
Caption |
Текст на кнопці |
Enabled |
Ознака доступності кнопки. Кнопка доступна, якщо значення властивості дорівнює True, і недоступна, якщо значення властивості дорівнює False |
Left |
Відстань від лівої границі кнопки до лівої границі форми |
Top |
Відстань від верхньої границі кнопки до верхньої границі форми |
Height |
Висота кнопки |
Width |
Ширина кнопки |
Для кнопок необхідно додати функціональність, написавши код обробки події натискання. При подвійному клацанні по кнопці ІСР автоматично об’являє підпрограму обробки. В код модуля форми проекту в поля об'єкта заноситься заголовок обробки, який формується автоматично, та в розділ реалізації шаблон обробки. Він має заголовок, що збігається із заголовком в полі об'єкта з добавкою імені форми на початку заголовка. В нього між операторними дужками begin…end треба внести текст підпрограми обробки події. Для деяких обробок можуть знадобитися й локальні змінні.
Для розміщення малюнку на формі необхідно використовувати компонент Image. Компонент Image, додається у форму так само, як і інші компоненти. Значок компонента Image знаходиться на вкладці Additional (рисунок 5). Основні властивості компонента наведені в табл. 5.
Властивість |
Опис |
Name |
Ім'я компонента. Використовується в програмі для доступу до компонента і його властивостей |
Picture |
Вибір файлу в якому розміщено малюнок |
Stretch |
Ознака . Кнопка доступна, якщо значення властивості дорівнює True, і недоступна, якщо значення властивості дорівнює False |
Left |
Відстань від лівої границі компонента Image до лівої границі форми |
Top |
Відстань від верхньої границі компонента Image до верхньої границі форми |
Height |
Висота малюнка |
Width |
Ширина малюнка |
Панелі Panel використовуються найбільш широко. З їх допомогою компонуються різні елементи інтерфейсу (кнопки, вікна редагування, списки), функціонально звязані одне з одним. Такий функціональний звязок повинен підтримуватися і візуальним звязком — обєднанням відповідних елементів в рамках однієї панелі.
Для розміщення панелі на формі необхідно використовувати компонент Panel. Компонент Panel, додається у форму так само, як і інші компоненти. Значок компонента Panel знаходиться на вкладці Standard (рисунок 5). Основні властивості компонента наведені в табл. 6.
Властивість |
Опис |
Name |
Ім'я компонента. Використовується в програмі для доступу до компонента і його властивостей |
Caption |
Текст на панелі |
BevelInner |
стиль внутрішньої части панелі |
BevelOuter |
стиль зовнішньої части панелі |
BevelWidth |
ширина зовнішньої части панелі |
BorderStyle |
стиль бордюра |
BorderWidth |
ширина бордюра |
Left |
Відстань від лівої границі панелі до лівої границі форми |
Top |
Відстань від верхньої границі панелі до верхньої границі форми |
Height |
Висота панелі |
Width |
Ширина панелі |
Delphi дозволяє змінити розмір і положення компонента за допомогою миші.
Для того щоб змінити положення компонента, необхідно встановити курсор миші на його зображення, нажати ліву кнопку миші й, утримуючи її натиснутою, перемістити контур компонента в потрібну точку форми, потім відпустити кнопку миші. Під час переміщення компонента відображаються поточні значення координат лівого верхнього кута компонента (значення властивостей Left і Тор).
Для того щоб змінити розмір компонента, необхідно його виділити, установити покажчик миші на один з маркерів, що позначають границю компонента, нажати ліву кнопку миші й, утримуючи її натиснутою, змінити положення границі компонента. Потім відпустити кнопку миші. Під час зміни розміру компонента відображаються поточні значення властивостей Height та Width .
Властивості компонента так само, як і властивості форми, можна змінити за допомогою Object Inspector. Для того щоб властивості необхідного компонента були виведені у вікні Object Inspector, потрібно виділити цей компонент (клацнути мишею на його зображенні). Можна також вибрати компонент із вікна, що знаходиться у верхній частині, Object Inspector списку, що розкривається, або зі списку у вікні Object TreeView .
Інспектор Об'єктів складається з двох сторінок, кожну з яких можна використовувати для визначення поведінки даного компоненту. Перша сторінка - це список властивостей, друга - список подій. Якщо потрібно змінити що-небудь, пов'язане з певним компонентом, то зазвичай це робиться в Інспекторові Об'єктів. Наприклад, можна змінити ім'я і розмір компоненту TLabel змінюючи властивості Caption, Left, Top, Height, і Width.
ЗАВДАННЯ:
1. Створити новий додаток, що складається з головної форми та форм створених для наступних занять.
(Зауваження: в додатку всі форми мають імена, що не повторюються /якщо ви маєте дві форми з однаковим ім’ям – перейменуйте одну з них, змінюючи для форми її властивість name, форми збережіть в загальному для них каталозі )
2. На головній форму прив’язати до компонент Button процедури обробки події, що містить FormX.Show (X – номер форми)
3. Перевірити роботу програми.
4. Роздрукувати отримані результати (головна форма та її програмний модуль).
Звіт по лабораторній роботі повинен містити:
Тему роботи.
Мету роботи.
Короткі теоретичні відомості по темі лабораторної роботи.
Блок-схему алгоритму програми.
Текст і результати роботи програми (надруковані на принтері).
Висновки по роботі.
Підготовка до роботи.
По вказаній літературі вивчити:
1. Методику активізації інтегрованого середовища розробки (ІСР) Delphi.
2. Структуру головного меню и його пункти.
3. Опції випадних меню.
Контрольні питання.
1. Активізація ІСР і вихід із середовища.
2. Вікна ІСР.
3. Призначення й зміст головного вікна ІСР.
4. Вікно Інспектора об'єктів
5. Вікно Конструктора форми.
6. Вікно Дерева об'єктів.
7. Вікно Редактора коду.
8. Панелі інструментів.
9. Палітра компонентів.
10. Меню головного вікна ІСР. Опції пунктів Файл, Виправлення, Пошук, Вид, Проект, Виконати, Компоненти, База даних, Сервіс, Вікно, Допомога.
11. Властивості форми та її зовнішній вигляд.
12. Як додати у форму компоненти?
13. Рядок введення Edit.
14. Поля виводу тексту Label.
15. Командна кнопка, компонент Button.
16. Створення та перегляд нових форм.