Заметка о консольных и оконных (Windows Forms) приложениях

Для первого знакомства с языком C# (в рамках раздела «Основы языка C#») мы будем создавать консольные приложения, хотя большинство пользователей использует лишь оконные (Windows_Forms) приложения. При создании в  IDE  такого приложения (создайте сами, не бойтесь экспериментировать, только в этом случае будет успех!) формиру­ется файлы Program.cs и Form1.cs (вызовы библиотек типа using System и using System.Windows.Forms для краткости удалены):


Текст Program.cs:

 namespace WindowsFormsApplication1
 {
    static class Program
    {
       /// <summary>
       /// Главная точка входа для приложения.
       /// </summary>
       [STAThread]
       static void Main()
     {
         Application.EnableVisualStyles();
         Application.SetCompatibleTextRenderingDefault(false);
         Application.Run(new Form1());
     }
   }
}

В нем также объявляется класс Program (помечен как статический — static). Обратим пока внимание в нем на строчку Application.Run(new Form1()); ,  необходимую для запуска следующего файла.Form1.cs:

namespace WindowsFormsApplication1
{
   public partial class Form1 : Form
  {
    public Form1()
   {
     InitializeComponent();
   }
}
}

Заметим, что в пространстве имен объявляется класс Form1, наследуемый от класса Form (наследование указывается через двоеточие), а в нем уже не статическая  функция Form1() — «конструктор класса», в теле которого вызывается функция, инициализирующая компоненты формы.

Однако, в отличие от консольного приложения, Windows-приложение не будет выполняться, пока какие-либо действия не предпримет пользователь.

И так, консольное приложение должно быть активным само по себе (говорят об «интерактивном режиме»), если необходимо, запрашивать у пользователя исходные данные, обрабатывать их и сообщать результаты. Конечно, можно реализовать и выбор действий в форме  меню, но это будет отдельной заботой программиста.

Управление Windows-приложением основано на понятии события (event), которые могут создаваться как пользователем, так и возникать в процессе выполнения приложения. То есть, принцип «один вход — один выход» здесь не применим. Но об этом — позже.

Ограничимся пока этими двумя видами проектов.

Обсудим  тему комментариев в C#   или перейдем к важнейшей теме «Типы данных в языке C#».


NEW: Наш Чат, в котором вы можете обсудить любые вопросы, идеи, поделиться опытом или связаться с администраторами.


Понравилась статья? Поделиться с друзьями:
3 2 голоса
Рейтинг статьи
Подписаться
Уведомить о

0 комментариев
Новые
Старые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x