Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Клас System.Windows.Forms.Application



Лекція 3. розробка ТА ЗБИРАННЯ компонентів типу Windows Forms

План

3.1. Шаблон створення компонентів для Windows Forms

3.2. Структура вікна Visual Studio при створенні Windows застосунків

3.2.1 Вікно проекту

Меню і панель інструментів

Properties Explorer – вікно властивостей об’єктів

3.3.4. Вікно компонентів: Toolbox

3.3.5. Властивості проекту

3.3. Типи форм (модальні і не модальні).

3.3.1. Типи форм

3.3.2. Властивості форми

3.3.3. Методи форми

3.3.4. Події форми

3.4. Розміщення на формі елементів керування (Controls)

3.4.1. Ієрархія класів Control

3.4.2. Заголовки (Label) і текстові поля (TextBox)

Компонент NumericUpDown - регулятор чисел

3.4.4. Контейнери елементів

3.5. Обробка подій в елементах форми

Шаблони створення компонентів для Windows Forms

Windows-застосунок в термінології .Net це рішення (Solition). Для компілятора це збірка (Assembly). Рішення може складатися з одного або кількох проектів. Кожний проект може складатися з кількох форм і інших файлів, рисунків, ресурсів, маніфесту (опису збірки).

Відкомпільована збірка є готовим до використання компонентом.

Для створення Windows-застосунку в середовищі Visual Studio потрібно вибрати тип шаблону - Windows Application, вказати назву проекту та шлях у файловій системі, де буде зберігатися проект.

Класи для розробки Windows застосунків розміщені в просторі імен Windows.Forms.

Для підключення цього простору при створенні проекту згідно шаблону автоматично добавляється директива імпорту:

 

using System.Windows.Forms;

 

Графічний інтерфейс користувача у Windows-застосунку – це сукупність форм, на яких розміщені елементи керування (Controls) та готові компоненти. Керування роботою програми виконується за допомогою меню, панелі інструментів та програмних кнопок.

Форма— це клас, який задається властивостями, що визначають його зовнішній вигляд, методами, які визначають його поведінку, і подіями, що визначають взаємодію з користувачем.

При створенні проекту автоматично створюється порожня форма. Це стандартний шаблон нової програми Windows Forms.

На відміну від консольного застосунку, код Windows форми в C# розміщений у двох файлах, Form1.cs і Form1.designer.cs.

Це так звані неповні (partial) класи. Неповні класи можуть бути розміщені у декількох файлах. При компіляції виконується формування єдиного класу.

У файлі Form1.designer.cs. знаходиться код, який генерується дизайнером форми. Він містить конструктори форми і всіх елементів форми.

Наприклад,namespace MyPrg{ partial class Form1 { #region Windows Form Designer generated code private void InitializeComponent() { this.components = new System.ComponentModel.Container(); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.Text = "Form1"; } #endregion }}

 

У файлі Form1.cs міститься код ініціалізації класу і члени класу (поля, властивості, методи, обробники подій). Саме з цим класом працює програміст.

Крім цих двох файлів автоматично створюється статичний клас Program у файлі (Program.cs), який містить точку входу в програму.

 

using System;using System.Windows.Forms;namespace MyPrg{ static class Program { static void Main() { Application.Run(new Form1()); } }}

Метод Main є точкою входу для застосунку і викликає метод Application.Run, який створює клас Form1.

Клас Application – головний клас нашого застосунку. Він запускає цикл обробки повідомлень для нашого застосунку.

Це прихований (Sealed) клас, його наслідування неможливе. Для керуванням роботою ми можемо використовувати методи цього класу, у нашому прикладі це метод Run.

 

Примітка 1.

Якщо змінити назву форми з Form1 на іншу у вікні властивостей, то потрібно змінити цю назву і в методі Application.Run(new Form1());

Крім того, до складу кожного застосунку входить файл з інформацією про збірку (Assembly.info).

Клас System.Windows.Forms.Application

Клас Application можна розглядати як "клас низького рівня", що дозволяє нам керувати поведінкою застосунку Windows Forms. Крім того, цей клас визначає набір подій на рівні всього застосунку, наприклад його закриття або простій центрального процесора.

Таблиця 3.1. Найбільш важливі методи класу Application (всі вони є статичними)

Метод класу Призначення
AddMessageFilter( ) Ці методи дозволяють перехоплювати повідомлення RemoveMessageFilter( ) і виконувати з цими повідомленнями необхідні попередні дії. Для того щоб додати фільтр повідомлень, необхідно вказати клас, що реалізує інтерфейс IMessageFilter
DoEvents( ) Забезпечує здатність застосунку обробляти повідомлення з черги повідомлень під час виконання якої-небудь тривалої операції. Можна сказати, що DoEvents() - це "швидкий" замінник нормальної багатопоточності
Exit( ) Завершує роботу застосунку
ExitThred( ) Припиняє обробку повідомлень для поточного потоку і закриває всі вікна, власником яких є цей потік

Клас Application визначає багато статичних властивостей, більшість з яких доступні тільки для читання.

Таблиця 3.2. Основні властивості класу Application

Властивість Призначення
CommonAppDataRegistry Повертає параметр системного реєстру, який зберігає загальну для всіх користувачів інформацію про застосунок
CompanyName Повертає ім'я компанії
CurrentCulture Дозволяє задати або отримати інформацію про поточну мову, для роботи з якою призначений поточний потік
CurrentlnputLanguage Дозволяє задати або отримати інформацію про мову для введення інформації, одержуваної поточним потоком
ProductName Для отримання імені програмного продукту, яке асоційоване з даним застосунком
ProductVersion Дозволяє отримати номер версії програмного продукту
StartupPath Дозволяє визначити ім'я виконуваного файла для працюючого застосунку і шлях до нього в операційній системі

 

 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.