30. Библиотеки визуальных компонентов. Библиотека VCL, иерархия базовых классов
Библиотеки визуальных компонентов - набор классов, которые сосредотачивают работу файлов.
1. OWL (Object Windows Library) (фирма Borland) (доступ с Delphi и Билдера) – включает классы, инкапсулирует общ. задачи классов. OWL – инкапсуляция окружения Windows. Имеет удобн. архитектуру, обладает значительной мощью. Используется в 16 и 32-х разрядных прогр-мах. Ур-нь абстрактных представлений данных – компромисс между легкостью использования и мощностью.
2. MFS (фирма Foundation) – входит в комплект поставки Visual C++. MFS менее абстрактна, чем OWL и лежит ближе к API – доступ к возможностям Windows. MFS проявляется в областях, изучается легче, имеет небольш. настройки над API в Windows, поддерживает классы в самой среде Windows в ядре, без дополнительных библиотек. MFS не соответ-ет концепциям объектно-ориентированного программирования. Выглядит как коллекция классов, плохо состыкованных друг с другом.
3. VCL (Visual Component Library) (фирма Borland). Компоненты VCL оформлены как классы объектного Паскаля. Компоненты имеют: 1) свойства (Property), которые определяют работу. 2) методы –фун-ции и процедуры, которые могут быть вызваны для изменения св-в компонента или к.-л. действия. Методы бывают: защищенные (доступные при описании), открытые (public полностью доступные), закрытые (private частный -полностью недоступный). Методы м. принимать компоненты и возвращать значения. 3) события (Event) –перемещение и щелчки мыши, ввод с клавиатуры, активизация меню, перемещение окна и т.д. ОC уведомляет прогр-му о событиях, посылая соответ-щее сообщение (message). События происходят в компоненте, о чем пользователь м.узнать (П: компонент Button реагирует на щелчок мыши). События обрабат-ся обработчиками событий (Event handler). Все объекты VCL должны размещаться динамически, т.е. «в куче». При активизации объекта программа авт-ки вызывает его код.
Структура VCL (иерархия):
Tobject – прародитель всех классов. Tpersistent – определяет способность всех компонентов сохранять файлы. Берет заботу о низкоуровневых деталях. Невизуальн. компонент – созданы на базе невизуальных (TTimer). Визуальн. компонент – основыв-ся на классе TControl, который обеспеч-ет необх. дополнит. функции визуальн. компонентов. TGraphic Control и TWin Control производят отдельн. компоненты. Для образования имени указателя используется знач-е св-ва Name, который имеет тип TMemo, т.е. м. хранить сообщения.