Windows 98) для копирования текста в буфер обмена (опция меню Edit/Copy). Приложение, выполняющее чтение или просмотр буфера обмена, для получения скопированного текста может использовать любой из этих форматов. Функция EnumClipboardFormats извлекает форматы в том же порядке, в каком данные вводились в буфер обмена. Имена форматов должны следовать в порядке приоритетности. В данном случае наиболее приемлемым является специальный формат объекта, называемый "DataObject". Следующим наиболее приемлемым является формат"ObjectDescriptor". Затем следует формат текста с символами форматирования "Rich Text Format". Первый предопределенный формат — CF_TEXT. Он включает текстовые символы, но символы форматирования отсутствуют. Последним и наименее приемлемым является формат CF_OEMTEXT, который включает только набор символов OEM.См. \local-sources\chapl8\18-03.txt
GetClipboardData • Windows 98 • Windows 2000 |
|
Описание |
Функция GetClipboardData извлекает дескриптор содержимого буфера обмена для данного формата. Если владелец буфера обмена воспроизводит указанный формат данных, возвращаемый дескриптор блока памяти буфера обмена будет иметь один из типов, указанных в табл. 18.1. Перед вызовом функции GetClipboardData потребуется открыть буфер обмена с помощью функции OpenClipboard Приложение должно немедленно скопировать данные в приватный блок памяти. В противном случае другое приложение может очистить буфер обмена, что сделает дескриптор недействительным. Содержимое буфера обмена никогда не должно оставаться заблокированным каким-либо приложением. Непосредственно после извлечения содержимого необходимо разблокировать данные и закрыть буфер обмена с использованием функции CloseClipboard. |
Синтаксис |
HANDLE GetClipboardData ( UINT uFormat) |
Параметры |
|
uFormat |
UINT: Указывает формат буфера обмена для данных, которые приложение будет считывать. Этот формат должен быть одним из перечисленных в табл. 18.1 либо зарегистрированным. |
Возвращаемое значение |
HANDLE: Дескриптор общего глобального блока памяти. В случае ошибки возвращается значение NULL. Для возврата кода ошибки следует воспользоваться функцией GetLastError. |
Включаемый файл |
winuser.h |
См. также |
OpenClipboard, CloseClipboard, SetClipboardData |
Связанные сообщения |
|
WM_ASKFORMATNAME, WM_HSCROLLCLIPBOARD, WM_PAINTCLIPBOARD, WM_SIZECLIPBOARD, WM_VSCROLLCLIPBOARD. |
|
ПРЕДУПРЕЖДЕНИЕ |
|
Приложение, вызывающее функцию GetClipboardData, должно разблокировать блок памяти сразу после его чтения. Если оставить его заблокированным пока Windows обрабатывает сообщения, может произойти сбой системы. |
|
Пример |
См. пример, приведенный в описании функции ChangeCIipboardChain. |
GetClipboardFormatName • Windows 98 • Windows 2000 |
|
Описание |
Функция GetClipboardFormatName возвращает имя зарегистрированного формата буфера обмена. Приложение может использовать функцию Get-CiipboardFormatName, чтобы определить, может ли текущий владелец буфера обмена воспроизводить зарегистрированный формат. Таким образом могут обнаруживаться имена только зарегистрированных приложениями форматов. Предопределенные форматы Windows возвращают значение NULL. |
Синтаксис |
int GetClipboardFormatName ( UINT uFormat, LPTSTR IpFormatName, int nMaxCount ) |
Параметры |
|
uFormat |
UINT: Номер формата. Этот номер возвращается функциями EnumClipboardFormats и RegisterClipboardFormat. |
IpFormatNantji |
LPTSTR Указатель на буфер памяти, который будет содержать имя формата буфера обмена, завершаемое нулем. Минимальный размер буфера в байтах определяется параметром nMaxCount. |
nMaxCount |
int: Максимальный размер строки, считываемой в буфер IpFormatName. Если имя формата длиннее, оно усекается. |
Возвращаемое значение |
int Возвращается количество считанных символов. В случае ошибки возвращается значение 0. Для возврата кода ошибки следует воспользоваться функцией GetLastError. |
Включаемыйфайл |
winuser.h |
См. также |
EnumClipboardFormats, RegisterClipboardFormat |
Пример |
См. пример из функции NameClipboardFormat, приведенный в описании функции EnumClipboardFormats. |
GetClipboardOwner • Windows 98 • Windows 2000 |
|
Описание |
Функция GetClipboardOwner возвращает дескриптор окна владельца буфера обмена. Владелец буфера обмена устанавливается, когда приложение вызывает функцию EmptyClipboard, что обычно происходит перед установкой данных буфера обмена с использованием функции SetClipboardData. |
Синтаксис |
HWND GetClipboardOwner ( VOID ) |
* Параметры |
Эта функция не содержит параметров. |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.