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


Пример организации связывания и встраивания - часть 2


Независимо от того, какое было вставлено растровое изображение — новое или уже существующее — для его редактирования достаточно выполнить двойной щелчок в области изображения. Операционная система обращается к Registry (Реестру), чтобы найти приложение, ассоциированное с растровым изображением. По умол­чанию — это программа Paint, которая поставляется вместе с Windows. Если эта установка не была изменена, то будет запушено приложение Paint и вместо меню и панели инструментов WordPad появится меню Paint (рис 14.3). (Если же эта установка была изменена, то будет запущено иное приложение). Теперь можно отредактировать растровое изображение, а затем возвратиться в основной доку­мент щелкнув за пределами растрового изображения. В нашем случае, приложение Paint является приложением-сервером, которое "знает", как обрабатывать растровые изображения.

Рис. 14.3. Меню и панели инструментов приложения-контейнера (WordPad) заменяются меню и панелями инструментов приложения-сервера (Paint)

Растровое изображение, помещенное в документ WordPad, и растровое изобра­жение, содержащееся на дисковом файле - это два отдельных объекта. Можно изменять этот файл на диске, заменять его другим, можно даже удалить его — на содержимое документа WordPad это не повлияет. В документе WordPad содержится копия растрового изображения.

Поскольку можно редактировать встроенный объект в том окне, в котором он находится, не нужно знать, с помощью какой программы был создан объект, и не нужно работать с этим объектом в отдельном окне. Одно из преимуществ такого подхода — упрощается выполнение операции масштабирования объекта по отно­шению к окружающему тексту.

Если в диалоговом окне Insert Object (Вставка объекта) установить флажок Link (Связать), то объект в документе WordPad будет связан с исходным объектом. При связывании объекта в системе будет только один объект (файл, содержащий рас­тровое изображение. При этом в документе WordPad будет содержаться ссылка на него, а не копия объекта. Тот же объект может быть связан с другим документом, возможно, с другим приложением. Независимо от количества документов, ссы­лающихся на данный объект, в системе будет находиться только один исходный объект. Если его изменить, то во всех документах, ссылающихся на него, появится уже измененная версия объекта (рис. 14.4).

Рис. 14.4. Во время редактирования связанного объекта средствами приложения-сервера, связанное с ним изображение в приложении-контейнере также модифицируется по мере редактирования исходного объекта

Примечание

Если объект, вставленный в приложение-контейнер, связан с исходным объектом (файлом-источником), то его нельзя отредактировать из приложения-контейнера. Это можно сделать из приложения-сервера. Сущность связывания заключается в том, что пользователь не может редактировать объект из какого-либо приложения. В памяти компьютера находится только один экземпляр объекта, и его можно изменить только с помощью программы, в которой он был создан. Как только объект будет изменен, все программы, имеющие на него ссылки, также изменятся.




Начало  Назад  Вперед