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


Буфер обмена. Добавление других форматов

В этом разделе объясняется, как развернуть список поддерживаемых форматов, особенно для поддержки OLE. Раздел Буфер обмена. Копирование и вставящ данные описывает минимальную требуемую реализацию, что до скопировать и вставить из буфера обмена. Если это все, реализуемые единственными форматы, помещенные в буфер обмена CF_METAFILEPICT, CF_EMBEDSOURCE, CF_OBJECTDESCRIPTOR и по возможности CF_LINKSOURCE. Большинство приложений будут требуются дополнительные форматов в буфер обмена, чем эти 3.

Зарегистрировать пользовательские форматы

Чтобы создать собственные пользовательские форматы, выполните одну и ту же процедуру можно использовать при регистрации настраиваемый формат буфера обмена. передайте имя формата функции RegisterClipboardFormat и используйте его возвращаемое значение как идентификатор формата

Параметр форматы в буфер обмена

Для добавления дополнительных форматов для этих размещаться в буфер обмена необходимо переопределить функцию OnGetClipboardData в классе. вывели из COleClientItem или COleServerItem (в зависимости от того, скопировать данные собственен). В этой функции необходимо использовать следующую процедуру.

Установка форматы в буфер обмена

  1. Создайте объект COleDataSource.

  2. Передайте этот источник данных в функции, добавить собственные форматы данных в список поддерживаемых форматов путем вызова COleDataSource::CacheGlobalData.

  3. Добавьте стандартные форматы путем вызова COleDataSource::CacheGlobalData для каждого стандартного формата для поддержки.

Этот метод используется в примере программы HIERSVR MFC OLE (просмотрите функции-члена OnGetClipboardData класса CServerItem ). Единственное отличие заключается в этом примере, раздел 3 не реализован, поскольку HIERSVR не поддерживает другие стандартные форматы.

Дополнительные сведения

См. также

Ссылки

Буфер обмена. Использование механизма буфера обмена OLE