Применение управляющих элементов ActiveX
(Продолжительность занятия 30 минут)
Вы можете снабдить свою Web-страницу управляющими элементами ActiveX. Для ссылки на элемент ActiveX служит тэг <OBJECT>. Например, если Вы добавили на Web-страницу элемент Calendar, в HTML-документ будет включен тэг <OBJECT>. Это занятие посвящено преимуществам управляющих элементов ActiveX и их использованию в Web-приложениях.
Изучив материал этого занятия,
Вы сможете:
- перечислить преимущества применения управляющих элементов ActiveX;
- использовать редактор реестра для выяснения идентификатора класса элемента ActiveX;
- установить атрибут CODEBASE для элемента ActiveX;
- узнать номер версии элемента ActiveX;
- установить начальные значения свойств элемента ActiveX.
Преимущества элементов управления ActiveX
В числе преимуществ применения элементов управления ActiveX в Web-странице на языке HTML — расширение возможностей, повышение производительности и защита кода.
Расширение возможностей
Применение Visual Basic для создания элемента управления ActiveX предоставляет в Ваше распоряжение пользовательский интерфейс и функциональные возможности, недоступные в стандартной версии HTML.
Повышение производительности
Выполнение приложений в элементах управления, а не на Web-сервере, повышает производительность за счет уменьшения обмена с Web-сервером. Скомпилированный элемент управления ActiveX выполняется гораздо быстрее, чем сценарий или HTML-код.
Защита кода
Так как элемент управления ActiveX компилируется, его исходный код, в отличие от HTML, недоступен пользователям.
Тэг <OBJECT>
Тэг <OBJECT> используется для вставки объектов (например, элементов ActiveX) в HTML-документы. Атрибуты тэга <OBJECT> задают управляющий элемент ActiveX, его местонахождение и метод отображения на HTML-странице.
Атрибуты тэга <OBJECT>
К атрибутам тэга <OBJECT> относятся CLASSID, ID и CODEBASE, а также WIDTH, HEIGHT, ALIGN, HSPACE, VSPACE и BORDER.
CLASSID
Когда элемент управления ActiveX устанавливается на компьютер пользователя, он регистрируется в реестре посредством уникального идентификатора класса. Атрибут CLASSID, содержащий идентификатора класса, — единственный обязательный атрибут тэга <OBJECT>.
Синтаксис Вот синтаксис атрибута CLASSID:
CLASSID = "clsid:12345678-1234-1234-1234-123456789012"
Пример Ниже приведен тэг <OBJECT> для элемента управления Calendar:
<OBJECT
classid="clsid:8E27C92B-1264-101C-8A2F-040224009C02"
>
</OBJECT>
ID
Атрибут ID позволяет обращаться к объекту из кода VBScript.
Пример Этот код иллюстрирует
установку атрибута ID элемента управления Calendar:
<OBJECT
classid="clsid:8E27C92B-1264-101C-8A2F-040224009C02"
id=cldCalendar2
>
</OBJECT>
CODEBASE
Атрибут CODEBASE представляет собой указатель ресурса файла, содержащего реализацию объекта.
WIDTH, HEIGHT, ALIGN, HSPACE, VSPACE и BORDER
Эти атрибуты определяют, как объект будет размещен на HTML-странице, задают его размеры и наличие рамки.
Извлечение идентификатора класса объекта
Visual InterDev и Frontpage 98 автоматически просматривают реестр в поисках идентификатора класса и записывают его в создаваемый тэг <OBJECT>. Вы можете определить ID класса элемента управления вручную, используя одно из перечисленных ниже средств.
- Редактор реестра (RegEdit) — позволяет изменять параметры реестра Вашей системы и, в частности, просматривать и копировать значения идентификаторов класса объектов.
- Утилита OLE Viewer (01e2View) — входит в состав Win32 Software Development Kit. Командой Copy HTML <объект> Tag to Clipboard меню Object можно скопировать тэг <OBJECT> в буфер обмена, а затем вставить его в HTML- или активную серверную страницу.
> Поиск идентификатора класса управляющего элемента Microsoft Calendar
- Запустите Regedit.exe.
- Откройте раздел HKEY_CLASSES_ROOT.
- В меню Edit выберите команду Find.
- В поле Find What
наберите Calendar Control 8.0 и нажмите Find Next.
ID класса элемента управления Calendar будет показан в левой части окна в виде открытой папки. Он будет выглядеть примерно так:
{8E27C92B-1264-101C-8A2F-040224009C02}
- Закройте редактор реестра.
Создание альтернативы тэгу <OBJECT>
Программам просмотра, которые не поддерживают тэг <OBJECT>, и пользователям, не разрешившим применение элементов управления ActiveX в своих программах просмотра, следует предоставить альтернативный метод доступа к тем же функциональным возможностям. Если программа просмотра не отображает элементы управления ActiveX, она отобразит все тэги HTML, расположенные между тэгами <OBJECT> и </OBJECT>.
Примечание Если программа
просмотра поддерживает тэг <OBJECT>, но элемент управления ActiveX не установлен,
альтернативный вариант не используется — в окне программы просмотра просто будет
отображен значок неработающего элемента управления.
Например, чтобы помочь пользователям программ просмотра, не поддерживающих элемент Calendar, снабдите Web-страницу текстовым полем, где пользователь введет дату.
Пример Вот как это сделать:
<OBJECT
classid="clsid:8E27C92B-1264-101C-8A2F-040224009C02"
>Рекомендуется просмотр с помощью Internet Explorer 4.0.<P>
Введите дату:
<INPUT TYPE=TEXT NAME="Date" MAXLENGTH=10 SIZE=10>
</OBJECT>
Подготовка к использованию управляющих элементов ActiveX
Атрибут CODEBASE тэга <OBJECT> содержит абсолютный или относительный указатель ресурса .осх-файла элемента управления.
Установка атрибута CODEBASE
Если элемент управления ActiveX не связан ни с какими другими файлами, кроме .осх-файла, Вы можете указать местоположение .осх-файла с помощью атрибута CODEBASE.
Пример Этот код загружает
элемент ActiveX из соответствующего .осх-файла:
<OBJECT
CLASSID="clsid:99B42120-6EC7--11CF-A6C7-OOAAOOA47DD2"
CODEBASE="http://server/control.ocx">
</OBJECT>
Если элемент управления ActiveX требует запуска дополнительных библиотек, Вы должны предоставить .cab-файл, который содержит все необходимые файлы, и .inf-файл, указывающий, как следует устанавливать каждый файл.
Пример Этот код загружает
и устанавливает элемент управления ActiveX, обращаясь к .cab-файлу:
<OBJECT
CLASSID="clsid:99B42120-6EC7-11CF-A6C7-OOAAOOA47DD2
CODEBASE="http://server/control.cab">
</OBJECT>
Указание номера версии
Атрибут CODEBASE позволяет также указать номер версии, чтобы пользователь смог загрузить только определенную версию управляющего элемента.
Пример В этом коде средствами
атрибута CODEBASE указывается номер версии (4.70. 1165) элемента управления типа
«всплывающее меню»:
<OBJECT
CLASSID="CLSID:7823A620-9DD9-11CF-A662-OOAAOOC066D2"
CODEBASE="iemenu.ocx#Version=4,70,0,1165">
Если номер версии не указан (формат ее номера — N,N,N,N), Internet Explorer воспользуется любой из установленных на компьютере версий элемента управления. Чтобы каждый раз загружать элемент управления на компьютер пользователя, укажите номер версии -1,-1,-1,-1
> Определение номера версии элемента управления
- Правой кнопкой мыши щелкните файл Mscal.ocx в окне Проводника и выберите в меню пункт Properties. Этот файл должен находиться в папке \Windows\System.
- В диалоговом окне Properties откройте вкладку Version и выясните номер версии.
Установка начальных значений свойств
Начальные значения свойств элемента управления ActiveX определяют, как данный элемент управления отображается при загрузке HTML-страницы программой просмотра.
Чтобы задать начальные свойства объекта для управляющего элемента ActiveX, воспользуйтесь тэгами <PARAM>.
Синтаксис Тэг <PARAM> использует следующий синтаксис:
<PARAM NAME="Имя параметра" VАLUE="Значение">
Для каждого свойства применяется отдельный тэг <PARAM>.
Пример Ниже приведен
тэг <OBJECT> элемента управления ActiveX Label, для которого заданы
начальные значения свойств Angle, Alignment и Caption:
<OBJECT
classid="clsid:99B42120-6EC7-11CF-A6C7-OOAAOOA47DD2"
id=lblActiveLbl
width=250
height=250
>
<PARAM NAME="Angle" VALUE="90">
<PARAM NAME="Alignment" VALUE="2">
<PARAM NAME="Caption" VALUЕ="Привет всем!">
</OBJECT>
Примечание Чтобы выяснить имена и допустимые значения свойств объекта, обратитесь к справке по объекту или воспользуйтесь средством просмотра объектов (Object Browser) Microsoft Visual Basic.
> Просмотр объекта Form с помощью Object Browser
- Запустите Visual Basic.
- Создайте новый проект типа Standard EXE.
- Нажмите F2, чтобы открыть окно просмотра объектов.
- В списке Project/Library выберите Project1.
- В списке Classes выберите Forml.
- В области Member
of Forml прокрутите список свойств, методов и других объектов, доступных
объекту Forml.
По мере добавления элементов управления в форму Forml каждый объект добавляется в список членов формы.
- Закройте Visual Basic.
Резюме
Управляющий элемент ActiveX — это двоичный исполняемый файл. Элементы управления ActiveX обеспечивают расширение функциональных возможностей стандартных Web-страниц, повышают их производительность и гарантируют защиту кода. Для размещения элементов управления ActiveX в HTML-документах применяется тэг <OBJECT> с различными атрибутами, включая CLASSID, ID и CODEBASE. Начальные значения свойств элемента управления ActiveX определяют, как данный элемент управления будет отображаться при загрузке HTML-страницы программой просмотра.