Professional Documents
Culture Documents
Лекція 07. Візуальне середовище Visual CS для роботи з Windows Forms додатками
Лекція 07. Візуальне середовище Visual CS для роботи з Windows Forms додатками
using System;
namespace OurFirstVisualApplication {
static class Program {
[STAThread] static void Main()
{
Application.EnableVisualStyles();
System - ми підключали цей простір імен для всіх додатків, які писали до
сих пір, а точніше, майстер підключав його замість нас. У цьому просторі в .NET
оголошені основні типи даних і все, без чого не виживе ні один додаток .NET,
який хоч щось робить;
System.windows.Forms - в цьому просторі імен розміщено все, що
необхідно для функціонування форми. Формами в .NET називають проект
майбутнього вікна. Якщо клас - це специфікація, по якій створюється об'єкт, то
форма-це специфікація, по якій створюється вікно. Ми плануємо працювати з
візуальним інтерфейсом, тому даний простір імен просто необхідний.
1.2. Потоки
Зверніть увагу, що перед методом Main () в квадратних дужках стоїть
ключове слово STAThread. Воно вказує на те, що модель потоків для додатка буде
поодинока. Такий атрибут повинен бути вказаний для всіх точок входу в
WinForms-додатка. Якщо він буде відсутній, то компоненти Windows можуть
працювати некоректно.
namespace OurFirstVisualApplication
{
{
initializeComponent();
}
}
}
Відразу ж бачимо, що весь код також оголошений в просторі імен
OurFirstvisuaiApplication. Усередині цього простору оголошується відкритий
клас з ім'ям Form1, який є спадкоємцем класу Form. В цьому оголошенні багато
чого цікавого, що ми ще не розглядали.
Для початку потрібно сказати про клас Form. В .NET цей клас реалізує усі
необхідні для форми властивості і методи. Можна створити екземпляр цього
класу і викликати метод відображення, і ви на екрані побачите вікно. Згадайте,
що екземпляр класу форми був переданий методу Run () класу Application. Цей
метод запускає цикл обробки і відображає вікно, так що нам відображати його не
потрібно. Якщо ви будете створювати вікно самі, то його потрібно буде самому і
відображати з допомогою методу Show () АБО ShowDialog (). Такі методи є у
класі Form.
namespace OurFirstVisualApplication
{
partial class Form1 {
/// Required designer variable.
/// <summary>
ftendregion
}
}
У цьому файлі немає ніяких підключень просторів імен, тому що весь код
у файлі пишеться дизайнером автоматично, і ми сюди будемо заглядати дуже
рідко, а редагувати його ще рідше. Дизайнер досить інтелектуальний, тому щоб
нічого не підключати, він просто буде звертатися до всіх методів і типів даних по
повному імені із зазначенням повного шляху в просторі імен.
Далі йде метод Dispose (), який буде викликатися системою, коли
необхідно буде знищити об'єкт класу форми. У загальних рисах скажу, що
відбувається в цьому методі, - викликається метод Dispose () змінної components,
щоб вона почистила за собою, і викликається цей же метод базового класу форми.
Ми зробили невелику зміну, але вона дуже важлива для нас, тому що ми
дізналися, як працювати з властивостями в візуальному дизайнері, і навчилися
змінювати їх значення. Тепер можете повернутися в файл Form1.Designer.es і
подивитися на метод ініціалізації компонентів. Зверніть увагу на наступний
рядок коду:
3. Властивості форми
Ми вже побачили, що властивості можуть змінюватися як візуально, так і
програмно. Візуальні зміни дизайнер оформляє в коді методу InitializeComponent
(). Якщо ви вирішили самі робити зміни властивостей в коді, то це можна зробити
в конструкторі і обов'язково після виклику методу InitializeComponent (). Якщо
написати код змін до виклику цього методу, то вони можуть виявитися марними,
якщо дизайнер згенерує свій код в методі ініціалізації компонентів.
public Form1()
{
InitializeComponent() ;
- Icon - в цій властивості можна задати іконку для форми. Тут теж є кнопка,
яка викликає стандартне вікно для відкриття файлу. Завантажена іконка
потрапить до resx-файлу форми;
- Minimum Size- мінімальні розміри вікна, менше яких вікно не може бути
зменшено. Таке обмеження може стати в нагоді, якщо занадто маленькі розміри
псують дизайн вікна;
Control.Font.Size = 10;
У цьому прикладі розмір шрифту змінюється на 10. Для цього ми
змінюємо властивість size об'єкта класу Font, який є властивістю нашого
елементу управління. Може існувати і довша вкладеність, але в C # я не пригадую
вкладеності більше 5, та й більше 3-х зустрічається вкрай рідко. Коли ви самі
будете проектувати ваші програми і класи, не робіть вкладеності більше 4, інакше
це можуть бути просто не дуже добре спроектовані класи, а робота з ними буде
незручна і навіть жахлива.
Відразу ж слід розглянути структури даних, з якими ви будете
зустрічатися при роботі з компонентами і формами: Size і Location. Розглянемо
кожну окремо.
Size.Height = 100;
Завжди потрібно створювати новий екземпляр структури. Наприклад,
наступний приклад встановлює розміри вікна в 200x300:
4. Методи форми
Клас Form містить безліч методів, які ми можемо використовувати і які
успадковуються нашими формами:
MessageBox.Show("Клац");