Поделиться через


Разница между элементом DataObject и буфером обмена

DataObject и буфер обмена предоставляют средства для перемещения данных из одного места в другое. Разработчик приложений должен запомнить несколько важных моментов при использовании DataObject или буфера обмена.

  • Вы можете хранить несколько элементов данных одновременно в DataObject или буфере обмена, если эти элементы используют разный формат данных. Если сохранить данные с уже используемым форматом, будут сохранены новые данные, а старые данные будут удалены.

  • Буфер обмена поддерживает форматы изображений и текстовые форматы. DataObject в данный момент поддерживает только текстовые форматы.

  • Объект DataObject существует только во время выполнения приложения; буфер обмена существует до тех пор, пока работает операционная система. Это означает, что вы можете поместить данные в буфер обмена и закрыть приложение без потери данных. То же самое не относится к DataObject. При закрытии приложения, которое помещает данные в объект DataObject, данные будут потеряны.

  • DataObject — это стандартный OLE-объект, а буфер обмена — нет. Это означает, что буфер обмена может поддерживать стандартные операции перемещения (копирование, вырезание и вставка), но не может выполнять операции перетаскивания. Вы можете использовать DataObject, если приложение должно поддерживать операции перетаскивания.

Совет

Вы можете определить собственные имена форматов данных при использовании метода SetText для перемещения данных в буфер обмена или DataObject. Это помогает различать текст, перемещаемый приложением, и текст, перемещаемый пользователем.

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.