Точка зрения разработчика приложения
Конечный пользователь видит одно приложение, но кто-то должен был это приложение создать, подключив к контейнеру управляющий элемент. Построение приложения из управляющих элементов заметно отличается от создания приложения с нуля. Применение управляющих элементов значительно ускоряет процесс — в конце концов построить дом из готовых блоков быстрее, чем сначала сделать блоки, а уж затем строить из них дом. Кроме того, использование управляющих элементов проще и требуе от программиста меньшей квалификации. Такова цель компонентного программного обеспечения: ускорение и упрощение разработки приложений.
Чтобы при создании приложения использовать управляющие элементы, разработчик вначале должен принять решение относительно их контейнера. В числе популярных инструментов создания контейнеров Microsoft Visual Basic и Developer Studio и множество других средств третьих фирм. Кроме того, в качестве контейнера можно использовать средство просмотра WWW, при этом управляющий элемент должен быть встроен в HTML-файл.
Затем следует решить, какие управлющие элементы ActiveX включить для обеспечения предполгаемых функциональных возможностей. В состав Visual Basic и Developer Studio входит множество управляющих элементов, так что программист без труда найдет нужный. Если нет, то проблему решит большой и быстро растущий рынок управляющих элементов ActiveX третьих фирм, где представлена продукция сотен компаний.
Если подходящего управляющего элемента нет ни в Visual Basic, ни на рынке третьих фирм, его можно разработать самостоятельно. Для этого необходима совершенно иная квалификация, чем для создания приложения, использующего управляющий элемент. В среде, где в основе создания программ лежит применение компонентов, более вероятно разделение программистов на две группы: одна сосредоточится на разработке специализированных управляющих элементов ActiveX, а другая займется сборкой из них законченных приложений. Эти две группы — их иногда называют создателями (creators) и сборщиками (assemblers) — выполняют взаимодополняющие функции в разработке программного обеспечения на основе компонентов.
Программисту приложения-контейнера предоставляется
комплект управляющих элементов, из которого разработчик может выбирать. Для создания приложения разработчик, выбрав управляющий элемент, задает его местоположение и размеры на бланке (или шаблоне диалогового окна). Tо, что конечный пользователь видит, работая с приложением, определяется управляющими элементами, задействованными программистом при создании этого бланка.
Практически
каждый управляющий элемент ActiveX определяет некоторый набор свойств (property). Задавая значения этих свойств, разработчик может изменить цвет управляющего элемента, цвет и толщину рамки вокруг него и т.д.
В дополнение к своим свойствам
управляющий элемент обычно определяет набор событий (events). Посылка и прием этих событий осуществляется с помощью механизма на основе СОМ, но как именно это происходит, для разработчика, собирающего данное приложение, значения не имеет.
Обычно контейнеры управляющих элементов позволяют программисту
задать действие (в виде кода функции или метода),
которое должно быть выполнено в ответ на сообщение, полученное от управляющего элемента. В общем случае контейнер может делать с событием что угодно, в том числе игнорировать его.
Кроме набора поддерживаемых свойств и набора событий, которые он может посылать своему контейнеру,
у типичного управляющего элемента есть и методы. Поскольку управляющие элементы ActiveX — это СОМ-объекты, можно предполагать, что у их клиентов — контейнеров управляющих элементов — имеется возможность выдачи запросов.
Что именно может запросить контейнер у управляющего элемента, определяется методами, поддерживаемыми последним.
Доступ к методам управляющих элементов ActiveX всегда осуществляется через диспинтерфейсы и IDispatch. С точки зрения разработчика приложения,
вызов методов управляющего элемента ActiveX осуществляется точно так же, как и вызов методов диспинтерфейса любого СОМ-объекта. Использование методов управляющих элементов ActiveX не содержит никаких особенностей — процесс тот же, как и для всех СОМ-объектов.
Таким образом, для разработчика приложения три элемента — свойства, события и методы — определяют возможности управляющего элемента ActiveX. Обеспечение их правильной работы — задача создателя управляющего элемента.
Содержание раздела