Типи форм
У Windows є 2 типи форм: модальні (Modal) і не модальні. Модальність визначає поведінку фокусу вводу форми і тип інтерфейсу: однодокументний (SDI) чи багатодокументний (MDI).
Модальна форма не дозволяє переключати фокус вводу на іншу форму без свого закриття. Вона є реалізацією SDI. Прикладами модальних форм є всі стандартні блоки діалогу Windows (у тому числі повідомлення про помилки). Модальні форми мають фіксований розмір і містять обмежений склад команд системного меню.
Не модальна форма дозволяє переключатися на іншу форму. Вона реалізує MDI (multiple document interface). Ці форми можуть містити інші форми, які в цьому випадку називаються MDI child forms. MDI форма створюється після встановлення в true властивості IsMdiContainer.
Прикладом є вікно Word або Excel. Як правило, головна форма в застосунку є не модальною. Не модальні форми мають системне меню і кнопки згортки-відновлення. Вони можуть змінювати свій розмір.
Кожна форма як екземпляр класу System.Windows.Forms має властивості, методи та події.
Властивості форми
Властивості визначають розмір і поведенку форми, фон, заголовок форми, особливості керування формою.
Статичні властивості можна встановити двома способами:
1) написати відповідні конструктори з ініціалізацією в файлі Form 1. designer . cs ;
2) встановити значення властивостей у вікні властивостей (Properties) в середовищі Visual Studio.
Динамічні властивості можна задавати під час виконання як реакцію на події.
Основні властивості форми (класу Form) перелічені в табл. 3.5.
Таблиця 5. Основні властивості форми (класу Form )
Властивість | Призначення | Значення за замовчуванням |
Name | Назва форми в проекті. | Form1, Form2.. |
AcceptButton | Встановлюється значення кнопки, яка буде спрацьовувати при натисненні клавіші Enter. Для того щоб ця властивість була активною, необхідна наявність принаймні однієї кнопки, розташованої на формі | None |
BackColor | Колір форми | Control |
BackgroundImage | Фоновий рисунок | None |
CancelButton | Встановлюється значення кнопки, яка буде спрацьовувати при натисненні клавіші Esc. | None |
ControlBox | Встановлюється наявність або відсутність трьох стандартних кнопок у верхньому правому кутку форми: "Згорнути", "Розгорнути" і "Закрити" | |
Cursor | Визначається вид курсора при його положенні на формі | Default |
DrawGrid | Встановлюється наявність або відсутність сітки з точок, яка допомагає форматувати елементи форми. | True |
Font | Формат шрифта | Microsoft Sans Serif; 8,25pt |
FormBorderStyle | Визначення виду границь форми. | Sizable |
Icon | Зображення іконки, що розташовується в заголовку форми. Підтримуються формати .ico. | |
MaximizeBox | Визначається активність стандартної кнопки "Розгорнути" у верхньому правому кутку форми. | True |
MaximumSize | Максимальний розмір ширини і висоти форми, що задається в пікселях. Форма буде приймати вказаний розмір при натисненні на стандартну кнопку "Розгорнути" | 0;0 (У весь екран) |
MinimizeBox | Визначається активність стандартної кнопки "Згорнути" у верхньому правому кутку форми | True |
MinimumSize | Мінімальний розмір ширини і висоти форми, що задається в пікселях. Форма буде приймати вказаний розмір при зміні її границь користувачем (якщо властивість FormBorderStyle має значення за умовчанням Sizable) | 0;0 |
Size | Ширина и висота форми | 300; 300 |
StartPosition | Визначення розташування форми при запуску застосування. | WindowsDefaultLocation |
Text | Заголовок форми. | Form1, Form 2 |
WindowState | Визначення положення форми при запуску. Можливі значення: · Normal — форма запускається з розмірами, вказаними у властивості Size; · Minimized — форма запускається з мінімальними розмірами, вказаними у властивості MinimumSize; Maximized — форма розгортається на весь екран | Normal |
Методи форми
Методи забезпечують керування формою.
Таблиця 6. Основні методи класу Form
Ім’я методу | Призначення |
Form.ShowDialog() | Забезпечує представлення форми як модального dialog box. |
Form.Show() | Показує форму як немодальний dialog box |
Form.SetDesktopLocation() | Використовується для позиціонування форми на поверхні desktop |
Form.Activate() | Активізує приховану форму |
Form.Hide() | Приховує форму |
Form.Close(). | Закриває форму |
Події форми
Події форми пов’язані із створенням, знищенням, режимами роботи форми.
Таблиця 7. Основні події класу Form
Подія | Призначення |
Load | Генерується один раз, безпосередньо після першого виклику методу Form.Show() або Form.ShowDialog(). Ця подія може використовуватися для первинної ініціалізації змінних і для підготовки форми до роботи (для кожної форми). |
OnLoad | Призначення максимальних і мінімальних розмірів форми |
Activated | Подія генерується при активізації форми. В обробнику події вставляють методи Form.Show(), Form.ShowDialog(), Form.Activate() |
VisibleChanged | Генерується при зміні властивості Visible форми коли вона стає видимою або невидимою. Події сприяють методи Form.Show(), Form.ShowDialog(), Form.Hide(), Form.Close(). |
Deactivated | Виникає при втраті фокусу формою в результаті взаємодії з інтерфейсом користувача або в результаті виклику методів Form.Hide() або Form.Cloze() – але тільки для активної форми. Якщо закривати неактивну форму, подія не відбудеться. |
Closing | Виникає безпосередньо перед закриттям форми. У цей момент процес закриття форми може бути припинений і взагалі відмінений, чому сприяє розміщуваний в тілі обробника події наступний програмний код: e.Cancel = true; де e - подія типу CancelEventArgs. |
Closed | Вже після закриття форми. В обробнику цієї події розміщується будь-який код для “очищення” після закриття форми. |
Дата: 2019-02-25, просмотров: 216.