Создание и использование документов ActiveX
Документы ActiveX позволяют в полной мере применить все возможности Visual Basic в Интернете или в интрасети. Документ ActiveX представляет собой приложение Visual Basic, для которого в роли контейнера выступает Microsoft Internet Explorer 4 (или более поздняя версия). С помощью документов ActiveX можно создать «переносную» версию приложения и работать с ней на портативном компьютере, в дальнем офисе или даже из дома. Все работает прямо в броузере. Тем не менее документы ActiveX не следует путать с Web-страницами - это самостоятельные приложения. Кроме того, пользователи могут спокойно переключаться между документами ActiveX и Web-страницами в броузере. При разработке приложения документы ActiveX могут образовывать пользовательский интерфейс, a ActiveX DLL - выполнять все необходимые вычисления на заднем плане.
Чтобы создать документ ActiveX, изображенный на рис. 17.1, выполните следующие действия:
1. Создайте новый проект командой File > New Project. Выберите в окне Project Wizard значок ActiveX Document EXE.
2. В окне свойств задайте свойству Name документа UserDocument1 значение docMain.
3. Разместите список устройств в левом верхнем углу документа docMain. Левый верхний угол списка должен быть удален от верхней и левой сторон на расстояние одной линии сетки. Растяните список так, чтобы его ширина составляла примерно 5 см.
4. Добавьте на документ docMain список каталогов и разместите его на одну линию ниже списка устройств. Растяните список так, чтобы его ширина совпадала с шириной списка устройств, а высота доходила до середины высоты документа.
5. Поместите список файлов непосредственно под списком каталогов. Растяните список так, чтобы его ширина совпадала с шириной списка каталогов, а высота на одну линию сетки не доходила до нижнего края документа docMain.
6. Теперь поместите на документ графическое поле и задайте его свойству Name значение picGraphic.
7. Расположите picGraphic на одну линию сетки правее списка устройств. Растяните поле так, чтобы его правый край на одну линию не доходил до правого края документа. Перетащите нижний край графического поля так, чтобы он совпадал с нижним краем списка файлов. Примерный вид документа показан на рис. 17.3.
Рис. 17.3. Документ ActiveX в режиме конструирования
8. Дважды щелкните на списке устройств, чтобы открыть окно программы.
9. Добавьте следующий фрагмент в процедуру события Change списка Drivel:
Private Sub Drive1_Change()
' Синхронизировать список каталогов со списком устройств Dir1.Path = Drivel. Drive End Sub
10. Добавьте следующий фрагмент в процедуру события Change списка Dir1:
Private Sub Dir1_Change()
Синхронизировать список файлов со списком каталогов File1.Path = Dir1.Drive End Sub
11. Добавьте следующий фрагмент в процедуру события Click списка File1:
Private Sub File1_Click()
Вывести графическое изображение picGraphic.Picture = LoadPicture(Dir1.Path &
"\" & Filel.filename) End Sub
В отличие от форм документы ActiveX инициализируются в процедуре события Initialize. Помещая в нее программный код, можно подготовить документ к отображению.
12. В своем документе мы ограничимся просмотром растровых файлов формата BMP. Добавьте следующий фрагмент в процедуру события Initialize документа UserDocument (docMain):
Private Sub UserDocument_Initialize()
Отображать только файлы формата BMP Filel.Pattern = "*.bmp" End Sub
13. Добавьте последний фрагмент в процедуру события Resize документа User Document:
Private Sub UserDocument_Resize()
Изменить размеры списка файлов Filel.Height = (ScaleHeight - Filel.Top)
Изменить размеры графического поля picGraphic.Height = ScaleHeight picGraphic.Width = (ScaleWidth - picGraphic.Left) End Sub
Приведенный выше фрагмент отвечает за то, чтобы содержимое документа всегда выглядело аккуратно. При изменении размеров окна броузера происходит автоматическое масштабирование документа. Процедура события Resize масштабирует графическое поле таким образом, чтобы оно вписывалось в документ. Поле растягивается и по вертикали так, чтобы его нижний край совпадал с нижним краем документа.
14. Запустите программу командой Run > Start или клавишей F5.
15. На экране появляется вкладка Debugging диалогового окна Project Properties. Обратите внимание: в списке Start Component указывается строка docMain. Нажмите кнопку ОК.
Internet Explorer запускается автоматически и выводит заданный документ. В предыдущих версиях Visual Basic приходилось вручную запускать Internet Explorer и загружать в нем файл документа.
Наш первый документ ActiveX ютов. Программа предназначена для просмотра графики формата BMP и работает в окне броузера. Давайте посмотрим, как работает документ:
1. Пользуясь списками устройств и каталогов, откройте каталог \Common\Graphics\ Bitmaps\Assorted.
2. Щелкните на любом из файлов в нижнем списке — его содержимое отобразится в графическом поле (рис. 17.4).
Рис. 17.4. Просмотр графических изображений
На этом наше знакомство с документами ActiveX заканчивается. Вы можете усовершенствовать это приложение или создать собственное. С течением времени вы будете все чаще встречаться с различными документами ActiveX в Интернете и интрасетях всего мира. Возможности документов ActiveX безграничны.
ПРИМЕЧАНИЕБолее подробную информацию о документах ActiveX можно найти в справочной системе Visual Basic (проведите поиск с ключевыми словами ActiveX document).