Поделиться через


Создание приложений MFC на основе форм

Форма — это диалоговое окно с элементами управления, позволяющим пользователю обращаться к данным и, возможно, изменять их. При желании можно разработать приложение, в котором пользователь может выбирать несколько разных форм. Как правило, приложение на основе форм позволяет пользователю осуществлять доступ к формам выбором пункта Создать в меню Файл. Приложение на основе диалога, в котором пользователям не предоставляется доступ к команде Создать в меню Файл, также считается приложением на основе форм.

В SDI-приложениях на основе форм в любой момент времени может выполняться только один экземпляр определенной формы. Приложение SDI на основе форм позволяет выполнять несколько разных форм одновременно, выбирая новую форму с помощью команды Создать в меню Файл.

При создании MDI-приложения на основе форм это приложение будет поддерживать запуск нескольких экземпляров одной формы.

При создании приложения с поддержкой нескольких документов верхнего уровня рабочий стол является косвенным родительским элементом для документа, а фрейм документа не ограничен клиентской областью приложения. Можно открывать несколько экземпляров документов, каждый из которых будет иметь свой собственный фрейм, меню и значок в панели задач. Можно закрыть последующие экземпляры документов по отдельности, однако если выбрать команду Выход в меню Файл исходного экземпляра, приложение закроет все экземпляры документа.

SDI-приложения, MDI-приложения и приложения с поддержкой нескольких документов верхнего уровня относятся к приложениям, основанным на формах, и используют архитектуру "документ-представление".

Любое приложение на основе диалоговых окон по определению является приложением на основе форм. Приложения на основе диалоговых окон не используют архитектуру "документ-представление", поэтому в дополнительных пользовательских формах необходимо самостоятельно управлять методами создания и доступа.

Базовым классом для приложений на основе форм является класс CFormView. Если приложение поддерживает работу с базами данных, также можно также выбрать любой класс, производный от класса CFormView. Формой является любое окно, производное от CFormView или от любого класса-наследника CFormView.

Даже при использовании базового класса CView позднее можно сделать приложение основанным на формах путем добавления класса MFC, производного от CFormView, и выбора ресурсов Generate DocTemplate в мастере классов MFC.

После завершения работы мастера будет открыт проект, и если в качестве базового класса был выбран класс CFormView (или класс, наследующий от CFormView), или же создавалось приложение на основе диалоговых окон, то в среде Visual C++ откроется редактор диалоговых окон. Теперь все готово к созданию первой формы.

Приступая к разработке приложения MFC на основе форм

  1. Следуйте указаниям, приведенным в разделе Создание приложения MFC.

  2. В мастере приложений MFC на странице Тип приложения установите флажок Поддержка архитектуры Document/View.

  3. Выберите Один документ, Многооконный или Несколько документов верхнего уровня.

    Примечание

    При выборе SDI-приложения, MDI-приложения или приложения с несколькими документами верхнего уровня по умолчанию в качестве базового класса представления приложения на странице Созданные классы мастера задается класс CView.Для создания приложения на основе форм необходимо выбрать указать в качестве базового класса представления приложения класс CFormView.Обратите внимание, что мастер не обеспечивает поддержку печати для приложений на основе форм.

  4. На других страницах мастера можно задать прочие необходимые параметры проекта.

  5. Нажмите кнопку Готово, чтобы создать общую схему приложения.

Дополнительные сведения см. в следующих разделах.

См. также

Задачи

Создание приложений MFC в стиле проводника Windows

Создание приложения MFC в стиле веб-обозревателя

Ссылки

мастер приложений MFC

Основные понятия

Form Views (MFC)