Составители:
Рубрика:
tance и 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 - называется
остовом приложения. Рассмотрим
174
tance и 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 - называется остовом приложения. Рассмотрим 174
Страницы
- « первая
- ‹ предыдущая
- …
- 172
- 173
- 174
- 175
- 176
- …
- следующая ›
- последняя »