Visual Basic 6. Руководство разработчика

       

Общие методы элемента управления


OLE Container

Чтобы управлять встроенными или связанными объектами, в элементе управ­ления OLE Container, в дополнение к уже упомянутым, предусмотрены следующие методы.

CreateEmbed

С помощью этого метода создается встроенный объект. Синтаксис метода имеет вид:

CreateEmbed sourcedoc, class

Параметр

sourcedoc — имя файла документа, используемого в качестве шаблона для встроенного объекта. Чтобы создать новый встроенный документ, в качестве параметра sourcedoc

указывается строка нулевой длины ("").

Параметр

class — необязательный параметр, определяющий имя класса встро­енного объекта. Этот параметр требуется только в том случае, если параметр sourcedoc опущен. Чтобы найти зарегистрированные классы, выберите свойство Class (Класс) в окне Properties (Свойства) элемента управления OLE Container и щелкните на кнопке с многоточием.

CreateLink

Этот метод позволяет создать связанный объект из содержимого файла. Синтаксис метода CreateLink:

CreateLink sourcedoc, sourceitem



Параметр

sourcedoc — это файл, из которого будет создан объект, а параметр sourceitem —

данные внутри файла, которые должны быть в связанном объекте. Например, чтобы связать содержимое элемента управления OLE Container с блоком ячеек рабочего листа Excel, следует задать файл с помощью параметра sourcedoc, a диапазон связанных ячеек - с помощью параметра sourceitem. Параметр sourceitem может указывать на одиночную ячейку (например, R10C12) или на блок ячеек (например, R1C1:R10C20). Можно также задать именованный блок.

После того как связанный документ создан, значение свойства Sourceitem устанавливается в строку нулевой длины, а его первоначальное значение присое­диняется к свойству SourceDoc. Например:

"c:\data\revenus\revl997.xls|RCl:R20C25 "

Самый простой способ определения синтаксиса этих двух команд - это выбрать связываемый объект, а затем при проектировании вставить его с помощью коман­ды Paste Special в элемент управления OLE Container. После того как объект будет связан, просмотрите значение свойства SourceDoc и используйте его в собственной программе.


DoVerb verb

Метод DoVerb выполняет команды ( являющиеся глаголами, например, Edit, Play и т. п.). Объекту известно, как выполнять заданное действие. Синтаксис метода:

DoVerb verb

Значения необязательного параметра verb перечислены в табл. 14.3.

Таблица 14.3. Значения параметра verb

Константа

Значение

Описание

VbOLEPrimary

0

Действие для объекта, заданное по умолчанию

vbOLEShow

-1

Открывает объект для редактирования.

Активизирует приложение, создавшее документ, в окне OLE Container

VbOLEOpen

-2

Открывает объект для редактирования

Активизирует приложение, создавшее документ, в отдельном окне

vbOLEHide

-3

Для встроенных объектов позволяет скрыть приложение, создавшее объект

vbOLEUIActivate

-4

Активизирует объект для оперативного редактирования и позволяет отобразить любые инструментальные средства пользовательского интерфейса. Если объект не поддерживает оперативное редактирование, то появляется сообщение об ошибке

VbOLEInPlaceActivate

-5

Когда пользователь перемещает фокус в окно элемента управления

OLE Container, то с помощью этой операции можно создать окно для объекта и подготовить объект, который нужно отредактировать

vbOLEDiscardUndoState

-6

Когда объект активизирован для редактирования, этот метод позволяет отбросить все изменения, которые приложение, создавшее объект, может отменить

InsertObjDIg

Этот метод позволяет отобразить диалоговое окно Insert Object (Вставка объекта). Установки пользователя, выполненные в этом окне, передаются приложению с помощью значений свойств элемента управления OLE Container.

PasteSpecialDIg

Этот метод позволяет отобразить диалоговое окно Paste Special (Специальная вставка). Установки пользователя, выполненные в этом окне, передаются прило­жению с помощью значений свойств элемента управления OLE Container.

Object Browser позволяет выяснить, какие встроенные константы используются в различных методах и свойствах элемента управления OLE Container.



1. Выберите команду Object Browser (Просмотр объекта) в меню View (Вид).

2. Выберите библиотеку объектов Visual Basic, а в нем объект Constant, чтобы отобразить названия констант в списке Method/Properties (Метод/Свойства).

Если немного поэкспериментировать с методами OLE и элементом управления OLE Container, то можно сделать вывод: в пограничных ситуациях OLE далека от совершенства. У пользователя нет возможности полностью контролировать внешний вид встроенного или связанного объекта, а иногда и панель приложения-сервера остается невидимой. Несмотря на то, что работа над OLE идет уже несколько лет, нельзя считать ее завершенной.

Существует не так уж много созданных в Visual Basic приложений, которые выполняют связывание и встраивание документов, предоставленных приложениями-серверами. Однако другой аспект OLE — OLE-автоматизация — вполне совершенна и является наиболее мощным средством основных Windows-приложений, например, Microsoft Office. Автоматизация OLE рассматривается во второй части главы, а сейчас мы кратко рассмотрим операции перетащить-и-опустить, применяемые в OLE.


Содержание раздела