Приём заказов:
Круглосуточно
Москва
ул. Никольская, д. 10.
Ежедневно 8:00–20:00
Звонок бесплатный

Программирование и информационные системы

Диплом777
Email: info@diplom777.ru
Phone: +7 (800) 707-84-52
Url:
Логотип сайта компании Диплом777
Никольская 10
Москва, RU 109012
Содержание

Например, для создания текстового редактора при помощи MFC необходимо выбрать правильные параметры и написать всего несколько строк кода. Приложение будет включать в себя панель состояния, панель инструментов (плавающая), все реализованные пункты меню «Файл», «Редактировать» и «Справка», в том числе список использованных файлов, справку по печати и контекстную справку. Однако вместо создания приложений на основе документов программисты стремятся создавать больше приложений на основе HTML или приложений, которые взаимодействуют с бизнес-объектами или серверами баз данных. Именно для этого используются .NET Framework и Windows Forms.
Это не значит, что Windows Forms нельзя использовать для создания хороших приложений на основе документов. Фактически, поскольку Windows Forms – это всего лишь небольшая часть из более чем 2000 классов, представленных в .NET Framework, вполне вероятно, что, если что-то не представлено в Windows Forms, оно предоставляется где-то еще в .NET Framework. Например, сама Windows Forms не предоставляет никакой поддержки сериализации, но остальная часть библиотеки классов .NET Framework предоставляет несколько способов сериализации объектов.
В этом главное отличие MFC от Windows Forms. MFC задумывался как замена базового Win32 API, но это не помешало росту Win32 API. Фактически, поскольку MFC рос за эти годы, функциональность базовой ОС увеличилась как минимум в десять раз. Windows Forms, с другой стороны, предназначен для замены только оконной части Win32. Конечно, Framework никогда не заменит весь Win32 API, но так как большинство новых функциональных возможностей, добавленных в Windows в обозримом будущем, будут добавлены в Framework, это выход. Таким образом, хотя Windows Forms не может делать все, что делает MFC, он предоставляет впечатляющий набор функций, которые могут упростить жизнь разработчикам приложений на стороне клиента, включая вещи, которые MFC вообще не делает.
В приложении Windows Forms используются две широкие категории объектов: формы и элементы управления. Объекты, используемые в приложении Windows Forms, хранятся в библиотеках, также называемых сборками. Как и обычные библиотеки, эти сборки имеют расширение .dll (что означает динамически подключаемую библиотеку). Чтобы использовать один из этих объектов, нужно знать имя сборки, в которой он хранится. Затем необходимо добавить ссылку на эту сборку в создаваемом приложении.
Типичное приложение Windows Forms имеет как минимум одну форму. Форма – это просто окно, которое является единицей пользовательского интерфейса, которая обнаруживаются у Microsoft начиная с Windows 1.0. Единственная форма в приложении Windows Forms обычно является основной формой, что означает, что она является либо родительской, либо владельцем любой другой формы, которая может отображаться в течение жизненного цикла приложения. Здесь отображается главное меню, а также панель инструментов, панель состояния и т.д. Когда основная форма исчезает, приложение закрывается.
Основной формой приложения может быть простое окно с сообщением, диалоговое окно, окно SDI, окно MDI или что-то более сложное, например, в таких приложениях, как Visual Studio .NET, с несколькими дочерними окнами, окнами инструментов и плавающими панелями инструментов.
После того как создана очередная форма приложения, ее нужно подготовить к отображению на экране. Об этом позаботится класс Application, спроектированный для запуска приложения, обработки его сообщений, а также остановки приложения. Класс Application предоставляет перегруженный метод Run(), который можно использовать для запуска программы. Одна из версий этого метода принимает форму в качестве аргумента. Эта форма должна быть первой или основной формой приложения; она будет отображаться при запуске приложения.
Visual Studio имеет большой выбор опций для создания графического интерфейса. Как показано на рисунке 1, в зависимости от выбранного языка, существуют типы различных проектов, которые можно выбрать, такие как приложение MFC, консольное приложение Windows и приложение Windows Forms. Каждое из этих различных типов приложений может использоваться для общего интерфейса. Тем не менее, у каждого из них есть свои собственные специальные атрибуты, независимо от того, отличаются ли они от кода, который генерируют, или от типа методов, которые они использовали для создания реальной формы.
Если выбрано приложение Windows Forms, то на экране появится пустая форма для приложения Windows, которая послужит основой для графического интерфейса, как показано на рисунке 2. Все типы графического интерфейса пользователя состоят из основных инструментов формы: кнопки, текстовые поля, метки, флажки и т.д. Более интуитивно понятные элементы управления, которые составляют основу GUI, непосредственным образом соотносится с функциональностью приложения. В то же время большое количество элементов управления может снизить уровень удобства пользователя в реальном графическом интерфейсе.
Ключевая функция, которую Visual Studio реализует в своей IDE, – это метод перетаскивания. Этот метод позволяет пользователю выбрать любой инструмент, который должен быть частью окончательного графического интерфейса пользователя, и перетащить его в форму окна. С помощью этого метода предварительно генерируется код, который работает параллельно с инструментами. Это устраняет сложную и трудоемкую задачу сопоставления кода с каждым инструментом. Поскольку в графическом интерфейсе может быть огромное количество различных и похожих элементов управления, при использовании Visual Studio используется простое соглашение об именах. Каждый инструмент, помещенный в форму, имеет окно настроек, которое расшифровывает то, как называется инструмент и что происходит при нажатии на этот инструмент, а также многие другие параметры макета. Это позволяет пользователю организовать GUI более эффективно, чем иметь инструменты, которые невозможно декодировать в коде. Код за графическим интерфейсом очень важен, так как он сообщает приложению о функциональности программы. Как уже указывалось ранее, код предварительно генерируется в формате, понятном даже начинающему программисту. Двойной щелчок на любом инструменте в графическом интерфейсе приведет к сгенерированному коду, который вызовет функцию. На рисунке 3 приведена такая функция – она обрабатывает нажатие кнопки button1.

Picture of Леонид Федотов
Леонид Федотов
Окончил НИУ ВШЭ факультет компьютерных наук. Сам являюсь кандидатом наук. По специальности работаю 13 лет, за это время создал 8 научных статей и 2 диссертации. В компании подрабатываю в свободное от работы время уже более 5 лет. Нравится помогать школьникам и студентам в решении контрольных работ и написании курсовых проектов. Люблю свою профессию за то, что это направление с каждым годом становится все более востребованным и актуальным.