Печать документов и библиотека mfc Предварительный просмотр документа Часть vii. Читать работу online по теме: ПЗ_release. Предмет: Дипломная работа (подготовка и защита).
Рассмотрение технических подробностей библиотеки MFC. Ссылки на разделы, описывающие использование CObject, базового класса для большинства классов в MFC. Описание классов коллекций, создаваемых и не создаваемых из шаблонов C. Ссылки на разделы, в которых рассматриваются использование даты-времени в сочетании с MFC.
Описание CFile и способов работы с файлами в MFC. Нормы списания материалов в строительстве. Описание использования универсальных служб, связанных с управлением памятью. Описание порядка обработки сообщений и команд платформой MFC, а также подключения их к соответствующим функциям-обработчикам.
Поясняется механизм сериализации, предоставленный, чтобы разрешить объектам сохранять свое состояние между запусками программы. Описание поддержки MFC для стандарта Юникода для кодирования расширенных символов на платформах Windows NT, Windows 2000 и Windows XP. Поясняются механизмы обработки исключений, доступные в MFC. Описание классов MFC, поддерживающих программирование для Интернета. Описание добавления поддержки Интернета в приложения. Описание подмножества MFC, которое предназначено для поддержки модели COM, тогда как основная часть библиотеки ATL предназначена для программирования в модели COM.
Описание того, что представляют собой процессы и потоки, и какие средства предлагает MFC для реализации многопоточности. Описание реализации Windows Sockets в MFC. Справочные материалы по библиотеке MFC, которая представляет собой набор классов, образующих платформу приложения, т.е.
Платформу для приложения, написанного для интерфейса Windows API. Предоставляет ссылки на примеры, показывающие как использовать MFC в приложениях, классических библиотеки DLL, в приложениях баз данных, элементах управления, веб-приложения и т.
Библиотека Mfc140u.dll
Главная часть библиотеки MFC состоит из классов, используемых для построения компонентов приложения. С каждым MFC-приложением связывается определяющий его на верхнем уровне объект theApp, принадлежащий классу, производному от CWinApp. Как правило, структура приложения определяется архитектурой Document-View(документ-облик). Это означает, что приложение состоит из одного или нескольких документов - объектов, классы которых являются производными от класса CDocument (класс 'документ'). С каждым из документов связаны один или несколько обликов - объектов классов, производных от CView (класс 'облик ') и определяющих облик документа. Класс CFrameWnd ('окна-рамки') и производные от него определяют окна-рамки на дисплее.
Элементы управления, создаваемые при проектировании интерфейса пользователя, принадлежат семейству классов элементов управления. Появляющиеся в процессе работы приложения диалоговые окна - это объекты классов, производных от CDialog. Классы CView, CFrameWnd, CDialog и все классы элементов управления наследуют свойства и поведение своего базового класса CWnd ('окно'), определяющего по существу Windows-окно. Этот класс в свою очередь является наследником базового ласса CObject ('объект'). Одна из трудностей в понимании принципов устройства MFC-приложения, заключается в том, что объекты, из которых оно строится, наследуют свойства и поведение всех своих предков, поэтому необходимо знать базовые классы. Архитектура приложения У всех Windows-приложений фиксированная структура, определяемая функцией WinMain. Структура приложения, построенного из объектов классов библиотеки MFC, является еще более определенной.
Приложение состоит из объекта theApp, функции WinMain, и некоторого количества других объектов. Сердцевина приложения - объект theApp - отвечает за создание всех остальных объектов и обработку очереди сообщений. Объект theApp является глобальным и создается еще до начала работы функции WinMain.
Компьютерная Сеть
Работа функции WinMain заключается в последовательном вызове двух методов объекта theApp: InitInstance и Run. В терминах сообщений можно сказать, WinMain посылает объекту theAppсообщение InitInstance, которое приводит в действие метод InitInstance. Получив сообщение InitInstance, theApp создает внутренние объекты приложения. Процесс создания выглядит как последовательное порождение одних объектов другими.

Набор объектов, порождаемых в начале этой цепочки, определен структурой MFC практически однозначно - это главная рамка, шаблон, документ, облик. Их роли в работе приложения будут обсуждаться позже. Следующее сообщение, получаемое theApp, - Run - приводит в действие метод Run. Оно как бы говорит объекту: 'Начинай работу, начинай процесс обработки сообщений из внешнего мира'. Объект theApp циклически выбирает сообщения из очереди и инициирует обработку сообщений объектами приложения.
Некоторые объекты имеют графический образ на экране, с которым может взаимодействовать пользователь. Эти интерфейсные объекты обычно связаны с Windows-окном.
Среди них особенно важны главная рамка и облик. Именно им объект прежде всего распределяет сообщения из очереди через механизм Windows-окон и функцию Dispatch. Когда пользователь выбирает команду меню окна главной рамки, то возникают командные сообщения. Они отправляются сначала объектом theApp объекту главная рамка, а затем обходят по специальному маршруту целый ряд объектов, среди которых первыми являются документ и облик, информируя их о пришедшей от пользователя команде.
При работе приложения возникают и обычные вызовы одними объектами методов других объектов. В объектно-ориентированной терминологии такие вызовы могут называться сообщениями. В Visual C некоторым методам приписан именно этот статус (например, методу OnDraw). Важное значение имеют также объекты документ, облик и главная рамка. Здесь отметим только, что документ содержит данные приложения, облик организует представление этих данных на экране, а окно главной рамки - это окно, внутри которого размещены все остальные окна приложения.
Каркас приложения Наследование - одна из фундаментальных идей объектно-ориентированного программирования. Именно этот механизм наследования позволяет программисту дополнять и переопределять поведение базового класса, не вторгаясь в библиотеку MFC, которая остается неизменной. Все изменения делаются в собственном производном классе. Именно в этом и заключается работа программиста. Объекты, их которых состоит приложение, являются объектами классов, производных от классов библиотеки MFC. Разработка приложения состоит в том, что программист берет из библиотеки MFC классы CWinApp, CFrameWnd, CDocument, CViewи т.д. И строит производные классы.

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

Наследуемые черты определяют общую схему поведения, свойственную таким приложениям. Новые же черты позволяют реализовать специфические особенности поведения приложения, необходимые для решения стоящей перед ним задачи. При определении производного класса программист может:. переопределить некоторые методы базового класса, причем те методы, что не были переопределены, будут наследоваться в том виде, в каком они существуют в базовом классе;. добавить новые методы;.
добавить новые переменные. Приложение, построенное на основе библиотеки MFC, - 'айсберг', большая часть которого невидима, но является основой всего приложения. Часть приложения, лежащую в библиотеке MFC, - framework - называется каркасом приложения.
Рассмотрим работу приложения как процесс взаимодействия между каркасом и частью приложения, разработанной программистом. Совершенно естественно, что в методах, определенных программистом, могут встречаться вызовы методов базового класса, что вполне можно рассматривать как вызов функции из библиотеки. Важнее, однако, что и метод производного класса, определенный программистом, может быть вызван из метода родительского класса. Другими словами, каркас и производный класс в этом смысле равноправны - их методы могут вызывать друг друга. Такое равноправие достигается благодаря виртуальным методам и полиморфизму, имеющимся в арсенале объектно-ориентированного программирования. Если метод базового класса объявлен виртуальным и разработчик переопределил его в производном классе, это значит, что при вызове данного метода в некоторой полиморфной функции базового класса в момент исполнения будет вызван метод производного класса и, следовательно, каркас вызывает метод, определенный программистом. Точнее говоря, обращение к этому методу должно производиться через ссылку на производный объект либо через объект, являющийся формальным параметром и получающий при вызове в качестве своего значения объект производного класса.
Когда вызывается виртуальный метод М1, переопределенный разработчиком, то согласно терминологии Visual C, каркас посылает сообщение М1 объекту производного класса, а метод М1 этого объекта обрабатывает это сообщение. Если сообщение М1 послано объекту производного класса, а обработчик этого сообщения не задан программистом, объект наследует метод М1 ближайшего родительского класса, в котором определен этот метод. Сувениры из китая оптом москва. Если же обработчик такого сообщения создан программистом, он автоматически отменяет действия, предусмотренные родительским классом в отсутствие этого обработчика.