Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Проектирование ИС.Часть1(DDE+буфер обмена+OLE)....doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
742.91 Кб
Скачать

2.3. Примеры и задачи: программирование буфера обмена данными

Задача. Записать графические данные в буфер обмена данными и возвратить данные в другом формате.

  • Создать Visual Basic форму, на которой разместить элементы управления Picture1, Picture2, Image1 и командную кнопку.

  • В модуле формы для кнопки создать код:

Private Sub ПУСК_Click()

Picture1.Picture = LoadPicture("C:\Program Files\Microsoft Office\media\office10\autoshap\BD18190_.wmf")

Clipboard.Clear

Clipboard.SetData Picture1.Picture, vbCFMetafile

Picture2.Picture = Clipboard.GetData

Clipboard.SetData Picture1.Image, vbCFBitmap

Image1.Picture = Clipboard.GetData

End Sub

  • Результат операции обмена представлен на рис.8:

Рис.8

Самостоятельные задания. Выполнить запись текстов в буфер в различных форматах и по требованию пользователя возвратить текст в данном формате (или сообщить, что формат недоступен. Пример интерфейса приведен на рис.9)

Рис.9

Тема 3. Ole-технологии

Содержание темы:

  1. Представление OLE-данных

  2. Элемент управления OLE-контейнер

    1. Создание OLE-объектов

    2. Программирование OLE-контейнера

  3. Объекты OLE как элементы управления

  4. OLE-Automation

3.1. Представление ole-данных

Термин OLE (сокращение от Object Linking and Embedding -связывание и внедрение объектов) – это метод, позволяющий редактировать данные из одного приложения в другом или переносить их в другое приложение. К OLE непосредственно относится понятие контейнер. Контейнером здесь может служить документ (например, документ Word или книга Excel), форма Vb-проекта и пр.Контейнер может принимать один или несколько объектов, поэтому, воспользовавшись OLE, можно формировать документы из нескольких источников данных. Например, если в книгу Excel внедрено изображение из Paint, то в этом случае Excel является контейнером, изображение – объектом, а приложение Paint - сервер-приложением.

Виды данных объекта.

Каждый объект имеет два различных вида данных:

• Данные представления (Presentation Data, PD)

• Естественные данные (Native Data, ND)

Данные представления служат для передачи информации о том, каким образом данные отображаются в исходном приложении. Естественные данные – это сами данные. Например, таблица из Excel должна быть представлена в табличной форме (PD), а содержимое таблицы, то есть значения в ячейках, – это естественные данные (ND). В этом заключается одно из отличий OLE от DDE. При DDE переносятся только естественные данные. За представление данных отвечает целевое приложение.

С OLE-объектами можно осуществлять одну из двух операций: связывание или внедрение. При связывании объекты содержат данные представления и ссылку на естественные данные. Это означает, что естественные данные находятся вне контейнера (в другом файле, например), а данные представления – с объектом-контейнером.

При внедрении как естественные данные, так и данные представления хранятся в объекте-контейнере. Поэтому данные недоступны для других приложений и не существуют в виде отдельных файлов.

Другая возможность OLE – OLE Automation. Эта технология позволяет работать с различными объектами как с элементами управления. Используя OLE Automation, можно оперировать связанными объектами при помощи команд (в большинстве случаев имеются в виду макрокоманды связанных объектов, например, команды VBA)

Рассмотрим несколько возможностей использования OLE-технологий в VB.