Стандартные форматы буфера обмена
Форматы буфера обмена, определенные системой, называются стандартными форматами буфера обмена. Эти форматы буфера обмена описаны в следующей таблице.
Пример
case CF_BITMAP:
hdcMem = CreateCompatibleDC(hdc);
if (hdcMem != NULL)
{
if (OpenClipboard(hwnd))
{
hbm = (HBITMAP)
GetClipboardData(uFormat);
SelectObject(hdcMem, hbm);
GetClientRect(hwnd, &rc);
BitBlt(hdc, 0, 0, rc.right, rc.bottom,
hdcMem, 0, 0, SRCCOPY);
CloseClipboard();
}
DeleteDC(hdcMem);
}
break;
Полный пример приведен в статье Использование буферов обмена.
Константы
Констант/значение | Описание |
---|---|
|
Дескриптор растрового изображения (HBITMAP). |
|
Объект памяти, содержащий структуру BITMAPINFO , за которой следует битовое изображение. |
|
Объект памяти, содержащий структуру BITMAPV5HEADER , за которой следуют сведения о цветовом пространстве растрового изображения и битовые биты. |
|
Формат обмена данными Software Arts. |
|
Формат отображения растрового рисунка, связанный с закрытым форматом. Параметр hMem должен быть дескриптором для данных, которые могут отображаться в растровом формате вместо данных в частном формате. |
|
Расширенный формат отображения метафайлов, связанный с закрытым форматом. Параметр hMem должен быть дескриптором для данных, которые могут отображаться в расширенном формате метафайла вместо данных в частном формате. |
|
Формат отображения метафайла, связанный с закрытым форматом. Параметр hMem должен быть дескриптором для данных, которые могут отображаться в формате метафайла вместо данных в частном формате. |
|
Формат отображения текста, связанный с закрытым форматом. Параметр hMem должен быть дескриптором для данных, которые могут отображаться в текстовом формате вместо данных в частном формате. |
|
Дескриптор расширенного метафайла (HENHMETAFILE). |
|
Начало диапазона целочисленных значений для определяемых приложением форматов буфера обмена объектов GDI. Конец диапазона — CF_GDIOBJLAST. Дескрипторы, связанные с форматами буфера обмена в этом диапазоне, не удаляются автоматически с помощью функции GlobalFree при очистке буфера обмена. Кроме того, при использовании значений в этом диапазоне параметр hMem не является дескриптором объекта GDI, а дескриптором, выделенным функцией GlobalAlloc с флагом GMEM_MOVEABLE . |
|
См . CF_GDIOBJFIRST. |
|
Дескриптор типа HDROP , определяющий список файлов. Приложение может получить сведения о файлах, передав дескриптор функции DragQueryFile . |
|
Данные представляют собой дескриптор (HGLOBAL) идентификатора языкового стандарта (LCID), связанного с текстом в буфере обмена. При закрытии буфера обмена, если он содержит CF_TEXT данные, но не содержит CF_LOCALE данных, система автоматически устанавливает для формата CF_LOCALE текущий язык ввода. Вы можете использовать формат CF_LOCALE , чтобы связать другой языковой стандарт с текстом буфера обмена. Приложение, которое вставляет текст из буфера обмена, может получить этот формат, чтобы определить, какой набор символов использовался для создания текста. Обратите внимание, что буфер обмена не поддерживает обычный текст в нескольких кодировках. Для этого используйте форматированный текстовый тип данных, например RTF. Система использует кодовую страницу, связанную с CF_LOCALE , для неявного преобразования CF_TEXT в CF_UNICODETEXT. Поэтому для преобразования используется правильная таблица кодовой страницы. |
|
Обработка в формате изображения метафайла в соответствии со структурой METAFILEPICT . При передаче дескриптора CF_METAFILEPICT с помощью DDE приложение, ответственное за удаление hMem , должно также освободить метафайл, на который ссылается дескриптор CF_METAFILEPICT . |
|
Текстовый формат, содержащий символы в наборе символов OEM. Каждая строка заканчивается комбинацией возврата каретки и перевода линий (CR-LF). Символ NULL сигнализирует о конце данных. |
|
Формат отображения владельца. Владелец буфера обмена должен отобразить и обновить окно просмотра буфера обмена, а также получать сообщения WM_ASKCBFORMATNAME, WM_HSCROLLCLIPBOARD, WM_PAINTCLIPBOARD, WM_SIZECLIPBOARD и WM_VSCROLLCLIPBOARD . Параметр hMem должен иметь значение NULL. |
|
Дескриптор цветовой палитры. Всякий раз, когда приложение помещает данные в буфер обмена, который зависит от цветовой палитры или предполагает ее, оно также должно поместить палитру в буфер обмена. Если буфер обмена содержит данные в формате CF_PALETTE (логическая цветовая палитра), приложение должно использовать функции SelectPalette и RealizePalette , чтобы реализовать (сравнить) любые другие данные в буфере обмена с этой логической палитрой. При отображении данных буфера обмена буфер обмена всегда использует в качестве текущей палитры любой объект в буфере обмена в формате CF_PALETTE . |
|
Данные для расширений пера в Microsoft Windows для вычислений пера. |
|
Начало диапазона целочисленных значений для закрытых форматов буфера обмена. Диапазон заканчивается CF_PRIVATELAST. Дескриптора, связанные с закрытыми форматами буфера обмена, не освобождаются автоматически; Владелец буфера обмена должен освободить такие дескрипторы, как правило, в ответ на сообщение WM_DESTROYCLIPBOARD . |
|
См . CF_PRIVATEFIRST. |
|
Представляет аудиоданные более сложные, чем можно представить в CF_WAVE стандартном формате волны. |
|
Формат символьной ссылки (Майкрософт) (SYLK). |
|
Формат текста. Каждая строка заканчивается комбинацией возврата каретки и перевода линий (CR-LF). Символ NULL сигнализирует о конце данных. Используйте этот формат для текста ANSI. |
|
Формат файла с тегами. |
|
Текстовый формат Юникода. Каждая строка заканчивается комбинацией возврата каретки и перевода линий (CR-LF). Символ NULL сигнализирует о конце данных. |
|
Представляет звуковые данные в одном из стандартных форматов волн, например 11 кГц или 22 кГц PCM. |
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
Заголовок |
|