- •Понятие визуального программирования.
- •Типы приложений (оконное приложение, консольное, сервис, драйвер).
- •Программирование, основанное на ресурсах. Редакторы ресурсов. Компилятор ресурсов. Функции для работы с ресурсами.
- •Работа с документами и окнами просмотра документов.
- •Структура оконного приложения.
- •Разработка однодокументных приложений. Использование AppWizard.
- •Назначение и методы классов приложения, главного окна, документа и вида.
- •Обработка сообщений. Работа с clAssWizard.
- •Обработка сообщений. Сообщение Windows. Обработка сообщений мыши и клавиатуры.
- •Панели элементов управления и каркас приложения. Панель инструментов. Строка состояния.
- •Модальные и немодальные диалоговые окна. Работа с модальным диалоговым окном.
- •Модальные и немодальные диалоговые окна. Работа с немодальными диалоговыми окнами.
- •Архитектура Document-View.
- •Управление gdi объектами. .Стандартные gdi-объекты .
- •Создание и уничтожение gdi-объектов.
- •Распределенные приложения. Технология dcom.
- •Многодокументный интерфейс mdi.
- •Рисование с помощью cdc.
- •Обзор основных классов mfc.
- •Классы для программирования графического интерфейса Windows.
- •Классы для обработки списков, массивов, коллекций.
- •Выполнение стандартных файловых операций с помощью класса cFile.
- •Сериализация данных приложения.
- •Многодокументный интерфейс mdi.
- •Понятие процесса и потока. Программирование многопоточных приложений.
- •Управление памятью в mfc.
- •Технологии связывание и внедрения объектов ActiveX.
- •Назначение и преимущества использования технологии ActiveX.
- •Установка элементов управления ActiveX.
- •Использование управляющих элементов ActiveX.
- •Понятие технологии com.
- •Создание объектов сом
- •Повторное применение объектов сом
- •Поддержка баз данных в mfc.
- •Технология ado
- •Обзор технологий odbc, dao, rdo, ole db. Интерфейсы доступа к данным.
- •Создание экранной формы для отображения содержимого бд.
- •Классы mfc для работы с сетью.
- •Программирование приложений для Интернета.
- •Динамически подключаемые библиотеки на mfc.
Работа с документами и окнами просмотра документов.
Структура оконного приложения.
Практически все приложения имеют пользовательский интерфейс, построенный на основе окон. Это может быть диалоговая панель, одно окно или несколько окон, связанных вместе. Основные свойства окон представлены классом CWnd, наследованным от класса CCmdTarget.
Обрамляющие окна (класс CFrameWnd). Класс CFrameWnd представляет окна, выступающие в роли обрамляющих окон, в том числе главные окна приложений. От этого класса также наследуются классы CMDIChildWnd и CMDIFrameWnd, используемые для отображения окон многооконного интерфейса MDI.
Окна органов управления. Для работы с органами управления (кнопки, полосы прокрутки, редакторы текста и т.д.) в библиотеке MFC предусмотрены специальные классы, наследованные непосредственно от класса CWnd. Перечислим эти классы:
CAnimate - используется для отображения видеоинформации.
CButton - кнопка.
CComboBox - список с окном редактирования.
CEdit - поле редактирования.
CHeaderCtrl - заголовок для таблицы.
CListBox - список.
CListCtrl - может использоваться для отображения списка пиктограмм.
CRichEditControl - окно редактирования, в котором можно редактировать форматированный текст.
CScrollBar - полоса просмотра.
CToolBarCtrl - панель управления.
Управляющие панели (классы CToolBar, CStatusBar). Так, класс CToolBar предназначен для создания панели управления. Эта панель обычно содержит ряд кнопок, дублирующих действие меню приложения. Класс CStatusBar управляет панелью состояния. Панель состояния отображается в виде полосы в нижней части окна.
Окна просмотра (класс CView и классы, наследованные от него). Большой интерес представляют класс CView и классы, наследуемые от него. Эти классы представляют окно просмотра документов приложения. Именно окно просмотра используется для вывода на экран документа, с которым работает приложение. Через это окно пользователь может изменять документ.
Класс CFormView позволяет создать окно просмотра документа, основанное на диалоговой панели.
Диалоговые панели (класс CDialog и классы, наследованные от него). От базового класса наследуются классы, управляющие диалоговыми панелями. Если необходимо создать диалоговую панель, можно наследовать класс от CDialog.
От класса CDialog наследуется ряд классов, представляющих собой стандартные диалоговые панели для выбора шрифта, цвета, вывода документа на печать, поиска в документе определенной последовательности символов, а также поиска и замены одной последовательности символов другой последовательностью.
Чтобы создать стандартный диалог, можно просто определить объект соответствующего класса. Дальнейшее управление такой панелью осуществляется методами класса.
Разработка однодокументных приложений. Использование AppWizard.
При создании приложения с однодокументным интерфейсом с использованием средств MFC AppWizard. Возможно выбрать следующие параметры:
1.возможность печати и предварительного просмотра документа;
2.наличие панели управления (tool bar)
3.наличие панели состояния (status bar);
4.поддержку технологии OLE
5.поддержку баз данных.
6.поддержку сетевых технологий.
После построения проекта single и запуска полученного приложения на экране появляется главное окно приложения. Оно имеет меню, панели управления и состояния.
Приложение с однооконным интерфейсом, созданное средствами MFC AppWizard, имеет гораздо больше ресурсов, чем приложение, использующее в качестве главного окна приложения диалоговую панель. В нем определены не только диалоговые панели и таблица текстовых строк, но и пиктограмма, меню, панель управления и таблица акселераторов.
MFC AppWizard создает для приложения, обладающего однооконным интерфейсом, четыре основных класса. Эти классы представляют основу любого однооконного приложения, созданного MFC AppWizard.
1) Класс приложения (CsingleApp) Базовый класс(CwinApp) Главный класс приложения.
2) Класс приложения (CmainFrame) Базовый класс ( CframeWnd) Класс главного окна приложения.
3) Класс приложения (CsingleDoc) Базовый класс (Cdocument) Класс документа приложения.
4) Класс приложения (CsingleView) Базовый класс (CView) Класс окна просмотра документа.
