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


Последовательность операций для сборки приложений MFC

В следующей таблице описана общая последовательность, последовательность действий, которые обычно выполняются при разработке приложения MFC.

Последовательность для создания приложения с помощью платформы

Задача Вы Платформа выполняет
Создайте скелетное приложение. Запустите мастер приложений MFC. Укажите нужные параметры на страницах параметров. Варианты включают создание COM-компонента, контейнера или обоих приложений; добавление автоматизации; и обеспечение поддержки базы данных приложения. Мастер приложений MFC создает файлы для скелетного приложения, включая исходные файлы для приложения, документа, представления и окон кадров; файл ресурса; файл проекта; и другие, все, адаптированные к вашим спецификациям.
Узнайте, какую платформу и мастер приложений MFC предлагают без добавления строки собственного кода. Создайте скелетное приложение и запустите его в Visual C++. Работающее приложение скелета получает множество стандартных команд меню "Файл", "Изменить", "Вид" и "Справка" из платформы. Для приложений MDI вы также получаете полнофункциональное меню Windows, а платформа управляет созданием, расположением и уничтожением дочерних окон MDI.
Создайте пользовательский интерфейс приложения. Используйте редакторы ресурсов Visual C++ для визуального редактирования пользовательского интерфейса приложения:

— Создание меню.
— определение акселераторов.
— Создание диалоговых окон.
— Создание и изменение растровых изображений, значков и курсоров.
— Измените панель инструментов, созданную мастером приложений MFC.
— Создание и изменение других ресурсов.

Вы также можете протестировать диалоговые окна в редакторе диалоговых окон.
Файл ресурсов по умолчанию, созданный мастером приложений MFC, предоставляет множество необходимых ресурсов. Visual C++ позволяет редактировать существующие ресурсы и добавлять новые ресурсы легко и визуально.
Сопоставление меню с функциями обработчика. Нажмите кнопку "События" в окне "Свойства" в представлении классов (или вкладка "Команды" мастера классов) для подключения меню и акселераторов для обработки функций в коде. Эти средства вставляют записи карты сообщений и пустые шаблоны функций в исходные файлы, которые вы задаете и управляете множеством задач программирования вручную.
Напишите код обработчика. Используйте представление классов, чтобы перейти непосредственно к коду в редакторе исходного кода. Заполните код для функций обработчика. Дополнительные сведения об использовании представления классов и мастерах, которые добавляют код в проект, см. в разделе "Добавление функциональных возможностей с помощью мастеров кода". Представление классов открывает редактор, прокручивается до пустого шаблона функции и помещает курсор для вас.
Сопоставление кнопок панели инструментов с командами. Сопоставите каждую кнопку на панели инструментов с командой меню или акселератором, назначив кнопку соответствующим идентификатором команды. Платформа управляет рисованием, включением, отключением, проверка и другими визуальными аспектами кнопок панели инструментов.
Проверьте функции обработчика. Перестройте программу и используйте встроенные средства отладки для проверки правильности работы обработчиков. Вы можете выполнить шаг или трассировку кода, чтобы узнать, как вызываются обработчики. Если вы заполнили код обработчика, обработчики выполняют команды. Платформа автоматически отключает элементы меню и кнопки панели инструментов, которые не обрабатываются.
Добавление диалоговых окон. Создание ресурсов диалогового окна с помощью редактора диалоговых окон. Затем создайте класс диалогов и код, обрабатывающий диалоговое окно. Платформа управляет диалоговым окном и упрощает получение сведений, введенных пользователем.
Инициализация, проверка и получение данных диалогового окна. Вы также можете определить способ инициализации и проверки элементов управления диалогового окна. Используйте Visual Studio, чтобы добавить переменные-члены в класс диалогов и сопоставить их с элементами управления диалоговым окном. Укажите правила проверки, которые будут применяться к каждому элементу управления, так как пользователь вводит данные. При желании укажите собственные пользовательские проверки. Платформа управляет инициализацией диалогового окна и проверкой. Если пользователь вводит недопустимые сведения, платформа отображает окно сообщения и позволяет пользователю повторно вводить данные.
Создайте дополнительные классы. Используйте представление классов для создания дополнительных классов документов, представлений и окон фреймов за пределами автоматически созданных мастером приложений MFC. Можно создать дополнительные классы наборов записей базы данных, классы диалогов и т. д. (С помощью представления классов можно создавать классы, не производные от классов MFC.) Представление классов добавляет эти классы в исходные файлы и помогает определить их подключения к любым командам, которые они обрабатывают.
Добавьте в приложение готовые компоненты. New Item dialog box Используйте его для добавления различных элементов. Эти элементы легко интегрировать в приложение и сэкономить много работы.
Реализуйте класс документа. Реализуйте класс или классы документов для конкретного приложения. Добавьте переменные-члены для хранения структур данных. Добавьте функции-члены для предоставления интерфейса данным. Платформа уже знает, как взаимодействовать с файлами данных документа. Он может открывать и закрывать файлы документов, читать и записывать данные документа и обрабатывать другие пользовательские интерфейсы. Вы можете сосредоточиться на том, как данные документа управляются.
Реализуйте команды "Открыть", "Сохранить" и "Сохранить как". Напишите код для функции-члена документа Serialize . Платформа отображает диалоговые окна для команд "Открыть", "Сохранить" и "Сохранить как" в меню "Файл". Он записывает и считывает документ с помощью формата данных, указанного в функции-члене Serialize .
Реализуйте класс представления. Реализуйте один или несколько классов представлений, соответствующих документам. Реализуйте функции-члены представления, сопоставленные с пользовательским интерфейсом с представлением классов. Доступны различные классы, производные от CView, включая CListView и CTreeView. Платформа управляет большинством связей между документом и его представлением. Функции-члены представления получают доступ к документу представления для отрисовки изображения на экране или на печатной странице, а также для обновления структур данных документа в ответ на команды редактирования пользователей.
Улучшение печати по умолчанию. Если требуется поддержка многостраниевой печати, переопределите функции-члены представления. Платформа поддерживает команды "Печать", "Настройка страницы" и "Предварительный просмотр " в меню "Файл ". Необходимо сказать, как разбить документ на несколько страниц.
Добавление прокрутки. Если необходимо поддерживать прокрутку, наследуйте класс представления или классы из CScrollView. Представление автоматически добавляет полосы прокрутки, когда окно представления становится слишком небольшим.
Создание представлений форм. Если вы хотите создать представления на основе ресурсов шаблона диалога, наследуйте класс представления или классы из CFormView. Представление использует ресурс диалогового шаблона для отображения элементов управления. Пользователь может переходить от элемента управления к элементу управления в представлении.
Создание форм базы данных. Если требуется приложение для доступа к данным на основе форм, наследуйте класс представления из CRecordView (для программирования ODBC). Представление работает как представление формы, но его элементы управления подключены к полям объекта CRecordset , представляющего таблицу базы данных. MFC перемещает данные между элементами управления и набором записей.
Создайте простой текстовый редактор. Если вы хотите, чтобы представление было простым текстовым редактором, наследуйте класс представления или классы из CEditView или CRichEditView. Представление предоставляет функции редактирования, поддержку буфера обмена и входные и выходные данные файлов. CRichEditView предоставляет стильный текст.
Добавьте окна разделения. Если вы хотите поддерживать разделение окна, добавьте объект CSplitterWnd в окно фрейма SDI или дочернее окно MDI и подключите его к функции члена OnCreateClient окна. Платформа предоставляет элементы управления splitter-box рядом с полосами прокрутки и управляет разделением представления на несколько панелей. Если пользователь разбивает окно, платформа создает и присоединяет к документу дополнительные объекты представления.
Создание, тестирование и отладка приложения. Используйте средства Visual C++ для создания, тестирования и отладки приложения. Visual C++ позволяет настроить компиляцию, ссылку и другие параметры. Он также позволяет просматривать структуру исходного кода и класса.

См. также

Последовательность операций для создания приложений OLE
Последовательность операций при создании элементов управления ActiveX
Последовательность операций для создания приложений баз данных
Сборка в платформе