Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
к экзамену.doc
Скачиваний:
5
Добавлен:
27.10.2018
Размер:
141.82 Кб
Скачать
  1. Динамический обмен данными dde. Свойства dde. Пример (фрагмент).

DDE дает возможность перейти через рамки приложения и взаимодействовать с другими приложениями и системами Windows.

Dynamic Data Exchange (динамическое управление данными) получило свое имя потому, что позволяет двум приложениям обмениваться данными (текстовыми, через глобальную память) динамически во время выполнения. Связь между двумя программами можно установить таким образом, что изменения в одном приложении будут отражаться во втором. Например, если Вы меняете число в электронной таблице, то во втором приложении данные обновятся автоматически и отобразят изменения. Кроме того, с помощью DDE можно из своего приложения управлять другими приложениями такими, как Word for Windows, Report Smith, Excel и др.

Свойства:

  1. Свойство LinkMode

Свойство LinkMode определяет вид связи, а также способ обновления

(актуализации) данных в приложении3приемнике.

control.LinkMod* = Значение

Имена констант и значения свойства LinkMode

Константа Значение Описание

vbLinkNone 0 DDE3связи нет (по умолчанию)

vbLinkAutomatic 1 Автоматическое изменение данных приемника при

изменении данных источника

vbLinkManual 2 Данные изменяются только при вызове метода Li kR t

vbLinkNotify 3 При изменении данных генерируется событие LinkNotify,

но данные приемника модифицируются только после

вызова метода LinkRequest

  1. Свойство LinkTopic

Для создания связи необходимо указать источник данных. При этом следует соблюдать следующий синтаксис идентификации источника данных:

Application | Topic!Item

где Application — это имя программы, являющейся источником данных. Обычно

это имя ЕХЕ-файла без расширения.

Topic — это некий объект приложения (например, форма в Visual Basic или таблица в Microsoft Excel).

Item — это конкретный элемент объекта Topi'c (элемент управления, ячейка таблицы и пр.),который может служить источником информации.

Application и Topic разделяются вертикальнрй чертой, a Item и Topic —восклицательным знаком.

При работе с электронной таблицей Application — это имя программы обработки электронных таблиц (например, Excel), Topic — имя файла (например, MAP.XLS), содержащего таблицу, a Item — одна или несколько ячеек (например, R1C1).

  1. Свойство Linkltem

С помощью свойства Linkltem задается место внутри документа, которое служит источником данных. Оно указывается в собственном свойстве, так как его можно изменять без прерывания DDE-связи.

control.Linkltem = "name"

Textl.Linkltem = "R1C1"

Создание связи с Word для Windows может выглядеть следующим образом:

Textl.LinkMode = vbLinkNone

Textl.LinkTopic = "winwordI new.doc"

Textl.Linklteni = "\doc"

Textl.LinkMode = vbLinkAutomatic

В Word для Windows присвоение item значения "\doc" указывает, что при

организации связи используется все содержимое файла, в данном случае

NEW.DOC

Для создания DDE-связи во время выполнения приложения опять "вступает

в игру" буфер обмена. Например, в процедуре реализации команды меню

создания связи вашего приложения следует считать информацию исходного

приложения из буфера обмена.

Private Sub mnuInsertLink_Click()

sLinkInfo = Clipboard.GetText(vbCFLink)

iPos = InStr(sLinkInfo, "!")

Textl.LinkMode = vbLinkNode

Textl.LinkTopic = Left(sLinkInfo, iPos 3 1)

Textl.Linkltem = Mid(sLinkInfo, iPos + 1)

Textl.LinkMode = vbLinkAutomatic End

Sub

В этом примере считывается информация из буфера обмена. Затем в ней

разыскивается позиция восклицательного знака, разделяющего LinkTopic и

Linkltem, и соответствующая часть информации о связи присваивается

свойствам.