Создание приложений MFC на основе форм
Обновлен: Ноябрь 2007
Форма — это диалоговое окно с элементами управления, позволяющим пользователю обращаться к данным и, возможно, изменять их. При желании можно разработать приложение, в котором пользователь может выбирать несколько разных форм. Как правило, приложения на основе форм дают пользователю возможность обращаться к формам путем выбора команды New в меню Файл. Приложения на основе диалоговых окон, в которых пользователь не имеет доступа к команде New в меню Файл, также относятся к приложениям на основе форм.
В SDI-приложениях на основе форм в любой момент времени может выполняться только один экземпляр определенной формы. При этом в один и тот же момент времени в SDI-приложении на основе форм может выполняться несколько разных форм; новая форма создается путем выбора команды New в меню Файл.
При создании MDI-приложения на основе форм это приложение будет поддерживать запуск нескольких экземпляров одной формы.
При создании приложения с поддержкой нескольких документов верхнего уровня рабочий стол является косвенным родительским элементом для документа, а фрейм документа не ограничен клиентской областью приложения. Можно открывать несколько экземпляров документов, каждый из которых будет иметь свой собственный фрейм, меню и значок в панели задач. Последующие экземпляры документов можно закрывать по отдельности, но если выбрать команду Exit в меню Файл самого первого экземпляра, то приложение закроет все экземпляры.
SDI-приложения, MDI-приложения и приложения с поддержкой нескольких документов верхнего уровня относятся к приложениям, основанным на формах, и используют архитектуру "документ-представление".
Любое приложение на основе диалоговых окон по определению является приложением на основе форм. Приложения на основе диалоговых окон не используют архитектуру "документ-представление", поэтому в дополнительных пользовательских формах необходимо самостоятельно управлять методами создания и доступа.
Базовым классом для приложений на основе форм является класс CFormView. Если приложение поддерживает работу с базами данных, также можно также выбрать любой класс, производный от класса CFormView. Формой является любое окно, производное от CFormView или от любого класса-наследника CFormView.
Даже при использовании базового класса CView позднее можно сделать приложение основанным на формах путем добавления класса MFC, производного от CFormView, и выбора ресурсов Generate DocTemplate в мастере классов MFC.
После завершения работы мастера будет открыт проект, и если в качестве базового класса был выбран класс CFormView (или класс, наследующий от CFormView), или же создавалось приложение на основе диалоговых окон, то в среде Visual C++ откроется редактор диалоговых окон. Теперь все готово к созданию первой формы.
Приступая к разработке приложения MFC на основе форм
Следуйте указаниям, приведенным в разделе Создание приложения MFC.
В мастере приложений MFC на странице Тип приложения установите флажок Поддержка архитектуры Document/View.
Выберите Один документ, Многооконный или Несколько документов верхнего уровня.
Примечание. При выборе SDI-приложения, MDI-приложения или приложения с несколькими документами верхнего уровня по умолчанию в качестве базового класса представления приложения на странице Созданные классы мастера задается класс CView. Для создания приложения на основе форм необходимо выбрать указать в качестве базового класса представления приложения класс CFormView. Обратите внимание, что мастер не обеспечивает поддержку печати для приложений на основе форм.
На других страницах мастера можно задать прочие необходимые параметры проекта.
Нажмите кнопку Готово, чтобы создать общую схему приложения.
Дополнительные сведения см. в следующих разделах:
См. также
Задачи
Создание приложений MFC в стиле проводника Windows
Создание приложения MFC в стиле веб-обозревателя