Последовательность операций для сборки приложений 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
Последовательность операций для создания приложений баз данных
Сборка в платформе