Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
7_TKP_ActiveX.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
209.41 Кб
Скачать

7.6.4. Использование существующих элементов ActiveX в среде Delphi.

На сегодняшний день существует большое количество различных элементов ActiveX, созданных многочисленными разработчиками. В сети Интернет и на компакт-дисках можно найти множество как коммерческих, так и бесплатных компонентов, реализующих самые разные функции. Поэтому если при разработке приложений возникает необходимость в каком-либо нестандартном элементе управления, то не всегда имеет смысл разрабатывать его самостоятельно - можно сначала поискать, не существует ли уже что-нибудь похожее на то, что вам требуется.

В процессе выполнения II учебной практики [12] Вы уже познакомились с использованием готовых ActiveX-элементов на примере разработки приложений в среде Delphi с применением ActiveX-компонента MS Agent фирмы Microsoft, входящего в состав операционной системы Windows. Поэтому здесь мы лишь кратко рассмотрим основные приемы работы с такими элементами.

7.6.4.1 Инсталляция существующих элементов ActiveX для работы в среде Delphi.

Установка нового элемента ActiveX состоит из двух этапов:

1. Регистрация элемента в системном реестре.

2. Установка элемента в палитру компонентов Delphi IDE.

Регистрация элемента ActiveX выполняется, как правило, при его инсталляции. Все зарегистрированные в текущий момент серверы ActiveX отображаются в списке, который выводится в окне диалога Import ActiveX, которое открывается при выборе команды меню Component | Import ActiveX Control.

Даже если вы не устанавливали ни одного элемента управления ActiveX, список в окне Import ActiveX будет содержать обширный перечень зарегистрированных в системе элементов. Все они устанавливаются при установке Windows, Microsoft Office и других приложений (например, Adobe Acrobat Reader).

Если в списке отсутствует необходимый вам элемент, но вы точно знаете, что он присутствует на вашем компьютере, то это означает, что не была выполнена регистрация элемента. Зарегистрировать элемент ActiveX можно прямо из окна Import ActiveX. Для этого следует щелкнуть на кнопке Add и затем выбрать нужный файл в окне диалога открытия файлов. Естественно, при этом необходимо знать имя файла, содержащего элемент ActiveX, и его местоположение на диске.

Для регистрации созданных в Delphi элементов управления ActiveX можно также использовать возможности операционной системы или среды разработки. Регистрация элемента ActiveX может быть также выполнена при помощи системной утилиты regsrv32.exe или поставляемой вместе с delphi утилиты tregsrv.exe. Регистрации компонента в качестве элемента управления ActiveX может быть выполнена также командой Register ActiveX Server из пункта меню Run. Для отмены регистрации элемента управления применяется команда Unregister ActiveX Server из пункта меню Run.

После того как в списке окна Import ActiveX выбран нужный сервер ActiveX, в поле Class Name этого окна появится перечень всех классов, содержащихся в выбранном сервере. Информацию в поле Class Name можно редактировать. Поэтому, если вас по какой-либо причине не устраивают заданные по умолчанию имена классов, вы можете их изменить.

Выпадающий список Palette page (Вкладка палитры) служит для выбора вкладки палитры компонентов, на которую будет размещен выбранный элемент ActiveX. По умолчанию, это вкладка ActiveX.

Следующие два поля для ввода Unit dir name (Имя директории для модуля) и Search path (Путь для поиска) предназначены, соответственно, для указания директории, в которой будет размещен модуль элемента ActiveX, и путь поиска данного модуля для компилятора Delphi.

Установка (инсталляция) элемента в палитру компонентов Delphi. Определив все необходимые параметры, для установки компонента следует щелкнуть на кнопке Install. При этом откроется окно диалога Install, в котором требуется указать имя файла пакета, который будет содержать устанавливаемый элемент. Обычно удобнее производить установку каждого элемента в отдельный пакет. Для реализации этого выберите в окне Install вкладку Into new package и укажите в поле File name имя создаваемого пакета (напоминаем, что пакеты имеют расширение *.dpk). В поле ввода Description окна Install можно задать описание пакета.

После щелчка на кнопке ОК в окне диалога Install будет выполнена генерация файла библиотеки типов в синтаксисе языка Object Pascal. Имя созданного при этом файла состоит из имени файла сервера ActiveX, к которому прибавлена строка «_TLB». Файл имеет расширение pas.

Затем будет выполнена компиляция пакета и все элементы ActiveX, содержащиеся в сервере, будут добавлены в палитру компонентов Delphi IDE на страницу ActiveX. После установки элемента ActiveX работа с ним ничем не отличается от работы с компонентами VCL.

Если вместо кнопки Install нажать на кнопку Create Unit (Создать модуль), то будет создан так называемый файл представления (wrapper). Данный файл - это описание библиотеки типов, он содержит описание всех методов, событий и свойств, которые находятся в элементе управления. Содержимое данного файла написано на языке Object Pascal. Имя файла состоит из двух частей: имени элемента ActiveX и строки _TLB.PAS. Нажав кнопку Create Unit (Создать модуль) вы лишь создадите данный файл, после чего можете посмотреть его содержимое. Для продолжения установки элемента управления вам нужно воспользоваться кнопкой Install (Установка). Данное окно содержит две вкладки Into existing package (В существующий пакет) и Into new package (В новый пакет). Вы должны выбрать, в какой пакет хотите включить новый элемент управления.