- •Государственное образовательное учреждение высшего профессионального образования
- •Часть 1
- •Введение. Технологии обмена данными
- •Тема 1. Динамический обмен данными (dde)
- •1.1 Принципы динамического обмена данными
- •Структура транзакций dde
- •1.2. Транзакции dde
- •1.3. Примеры и задачи: обмен данными между приложениями по протоколу dde
- •Использование функции dde
- •Передача данных из Excel в Access с помощью модуля Access
- •Взаимодействие Access и Word
- •Взаимодействие Access и Excel
- •Построение диаграммы с помощью инструкции ddeExecute
- •Тема 2. Буфер обмена данными
- •2.1 Буфер обмена данными в vb
- •2.2. Методы объекта Clipboar.
- •2.3. Примеры и задачи: программирование буфера обмена данными
- •Тема 3. Ole-технологии
- •3.1. Представление ole-данных
- •3.2. Элемент управления ole-контейнер
- •3.3. Объекты ole как элементы управления
2.1 Буфер обмена данными в vb
Технология обмена данными DDE позволяет создавать динамическую связь между приложениями, при которой изменения данных на сервере отображаются и у клиента. Однако такую связь надо тщательно программировать, кроме того, она работает достаточно медленно.
В простых случаях, когда не требуется устанавливать связь между данными на сервере и данными клиента, используется буфер обмена. Его роль играет программа Clipbrd.exe, содержащаяся в папке system32, окно которой представлено на рис.6.
Рис.6
Т
Рис.7
Таким образом, сервер копирует данные в буфер, а клиент выбирает их из буфера в нужном формате.
Доступ к буферу обмена в VB обеспечивает объект Clipboard.
2.2. Методы объекта Clipboar.
Для работы с текстами и графикой объект Clipboard имеет разные методы SetText и GetText – для работы с текстами; SetData и GetData – для работы с графикой.
Метод SetText – записывает текстовую строку в буфер обмена, заменяя текущее его содержимое. Синтаксис метода:
Clipboard.SetText <text>[.format]
Формат указывает, в каком формате будет записана строка.
Метод GetText – возвращает содержимое буфера в виде текстовой строки. Метод вызывается как функция. Синтаксис метода:
Text=Clipboard.GetText ([format])
Метод SetData – вставляет в буфер графические данные заданного формата. Синтаксис метода:
Clipboard.SetData <picture>[.format]
Метод GetData– возвращает содержимое буфера в виде графического изображения. Метод вызывается как функция. Синтаксис метода:
Pict=Clipboard.GetData ([format])
Ниже приведены некоторые именованные константы форматов, которые используются при работе с данными (табл. 3).
Таблица 3
Константа |
Значение |
Описание. |
vbCFLink |
&HFFFFBF00 |
Информация обмена DDE |
vbCFPTF |
&HFFFFBF01 |
PTF формат |
vbCFText |
1 |
Текст (формат по умолчанию) |
vbCFBitmap |
2 |
.BMP формат |
vbCFmetafile |
3 |
.WMF формат |
vbCFDIB |
8 |
Независимое от устройства растровое изображение .DIB |
vbCFPalette |
9 |
Цветовая палитра |
vbCFEmetafile |
11 |
Расширенный метафайл .EMF |
vbCFFiles |
15 |
Список имен файлов |
Замечание. Если при считывании формат не указан, нужный формат выбирается автоматически.
Метод GetFormat возвращает значение False или True в зависимости от того, содержит ли буфер обмена данные в указанном формате. Метод вызывается как функция. Синтаксис метода:
х=Clipboard.GetFormat ([format])
Метод Clear – удаляет содержимое буфера, используется перед экспортом данных в буфер. Синтаксис метода:
Clipboard.Clear
