Функция |
Назначение |
|||||
ChangeClipboardChain |
Удаляет программу окна просмотра буфера обмена из цепочки |
|||||
CloseClipboard |
Закрывает буфер обмена для чтения или записи его содержимого |
|||||
CountClipboardFormats |
Возвращает количество форматов буфера обмена, воспроизводимых текущим владельцем |
|||||
DragAcceptFiles |
Регистрирует окно для приема перетаскиваемых файлов |
|||||
DrragFinish |
Высвобождает память, используемую при передаче приложению имен файлов |
|||||
DragQueryFile |
Извлекает имена перетаскиваемых файлов |
|||||
DragQueryPoint |
Извлекает позицию курсора мыши при операции перетаскивания |
|||||
EmptyClipboard |
Очищает содержимое буфера обмена и удаляет связанные данные |
|||||
EnumClipboardFormats |
Перечисляет все форматы, воспроизведенные текущим владельцем буфера обмена |
|||||
GetClipboardData |
Возвращает дескриптор содержимого буфера обмена для данного формата |
|||||
GetClipboardFormatName |
Определяет имя зарегистрированного формата буфера обмена |
|||||
GefClipboardOwner |
Возвращает дескриптор окна владельца буфера обмена |
|||||
GetClipboardViewer |
Возвращает дескриптор первого окна просмотра цепочки программ просмотра буфера обмена |
|||||
GetOpenClipboardWindow |
Определяет дескриптор окна, которое последним открывало буфер обмена |
|||||
GetPriorityClipboardFormat |
Проверяет доступность требуемых форматов в буфере обмена |
|||||
IsClipboardFormatAvailable |
Проверяет доступность единственного формата в буфере обмена |
|||||
OpenClipboard |
Открывает буфер обмена для чтения или записи его содержимого |
|||||
RegisterClipboardFormat |
Регистрирует в среде Windows имя нового формата |
|||||
SetClipboardData |
Устанавливает содержимое буфера обмена для данного формата |
|||||
SetClipboardViewer |
Устанавливает новое окно просмотра в начало цепочки |
|||||
ChangeClipboardChain • Windows 98 • Windows 2000 |
||||||
Описание |
Функция ChangeClipboardChain удаляет окно просмотра буфера обмена из цепочки. Обычно используется при удалении главного окна программы просмотра буфера обмена. |
|||||
Синтаксис |
BOOL ChangeCIipboardChain( HWND hWnd, HWND hWndNext ) |
|||||
Параметры |
||||||
HWnd |
HWND: дескриптор окна, удаляемого из цепочки окон просмотра буфера обмена. |
|||||
hWndNext |
HWND: дескриптор окна, которое следует после hWnd в цепочке окон про-:мотра буфера обмена. Возвращаемое значение функции SetClipboardViewer эбозначает исходное следующее окно просмотра. Для определения факта удаления следующего окна просмотра и соответствующего обновления данных необходимо отслеживать сообщение WM_CHANGECBCHAIN. |
|||||
Возвращаемое значение |
BOOL: TRUE, если h Wnd удалено из цепочки окон просмотра буфера обмена, и FALSE в случае ошибки. Для возврата кода ошибки следует использовать функцию GetLastError. |
|||||
Включаемый файл |
winuser.h |
|||||
См. также |
SetClipboardViewer, GetLastError |
|||||
Связанные сообщения |
||||||
WM_DRAWCLIPBOARD, WM_CHANGECBCHAIN |
||||||
Пример |
В следующем примере создается окно просмотра буфера обмена. Приложение отобразит текущее содержимое буфера обмена, если он содержит данные в формате CF_TEXT или CF_BITMAP. Щелчок на пункте меню Test! приведет к очистке буфера обмена. При запуске приложения окно просмотра установится в цепочку, а при выходе из программы оно удалится. Кроме того, обратите внимание на правильность поведения окна просмотра буфера обмена, которое передает следующему окну сообщения WM_DRAWCLIPBOARD и WM_CHANGECBCHAIN. |
|||||
См. \local-sources\chapl8\18-01 . txt |
||||||
CloseClipboard • Windows 98 • Windows 2000 |
||||||
Описание |
Функция CloseClipboard закрывает буфер обмена для чтения или записи содержимого. Она возвращает управление данными буфера обмена среде Windows. Пока буфер обмена открыт, управление не должно передаваться Windows. Открывать и закрывать буфер обмена следует в процессе обработки единственного сообщения Windows. |
|||||
Синтаксис |
BOOL CloseClipboard( VOID ) |
|||||
Параметры |
Эта функция не имеет параметров. |
|||||
Возвращаемое значение |
BOOL: TRUE, если буфер обмена успешно закрыт. FALSE, если буфер обмена не был открыт. Для получения кода ошибки следует воспользоваться функцией GetLastError. |
|||||
Включаемый файл |
winuser.h |
|||||
См. также |
OpenClipboard, EmptyCIipboard, GetLastError |
|||||
Пример |
См. примеры для функции ChangeCIipboardChain. |
|||||
CountClipboardFormats • Windows 98 • Windows 2000 |
||||||
Описание |
Функция CountClipboardFormats возвращает количество форматов, воспроизводимых текущим владельцем буфера обмена. Для определения имен используемых форматов следует использовать функцию EnumClipboardFormats. |
|||||
Синтаксис |
int CountCHpboardFormats( VOID ) |
|||||
Параметры |
Функция не содержит параметров. |
|||||
Возвращаемое значение |
int: Возвращает количество форматов данных, содержащихся в данный момент в буфере обмена. При возникновении ошибки возвращается значение 0. Для получения кода ошибки следует использовать функцик GetLastError. |
|||||
Включаемый файл |
winuser.h |
|||||
См. также |
EnumClipboardFormats, GetLastError |
|||||
Пример |
См. пример для функции EnumClipboardFormats. |
|||||
DragAcceptFiles • Windows 98 • Windows 2000 |
||||||
Описание |
Функция DragAcceptFiles регистрирует указанное окно как принимающее перетаскиваемые файлы либо отбрасывающее их. Если такие файлы принимаются, при их перетаскивании в окно программа получит сообщение WM_DROPFILES. |
|||||
Синтаксис |
VOID DragAcceptFiles ( HWND hWnd, BOOL bAccept) |
|||||
Параметры |
||||||
hWnd |
HWND: Регистрация окна на предмет приема перетаскиваемых файлов. |
|||||
bAccept |
BOOL: Принимает значение TRUE в случае приема перетаскиваемых файлов. Принимает значение FALSE, чтобы прекратить прием перетаскиваемых файлов. |
|||||
Включаемый файл |
shellapi.h |
|||||
См. также |
DragQueryFile, DragQueryPoint, DragFinish |
|||||
Связанные сообщения |
||||||
WM_DROPFILES |
||||||
Пример |
В следующем примере реализован прием перетаскиваемых файлов. После перетаскивания одного или нескольких файлов в клиентскую область в элемент управления списка добавляются имена файлов с позицией "отпускания" (drop). |
|||||
См. \local-sources\chapl8\18-02.txt |
||||||
DragFinish • Windows 98 • Windows 2000 |
||||||
Описание |
Функция DragFinish высвобождает память, выделенную системой Windows для передачи приложению имен файлов. |
|||||
Синтаксис |
VOID DragFinish ( HDROP hDrop ) |
|||||
Параметры |
||||||
hDrop |
HDROP: Структура, описывающая перетаскиваемые файлы. Этот дескриптор извлекается из параметра wParam сообщения WM_DROPFILES. |
|||||
Включаемый файл |
shellapi.h |
|||||
См. также |
DragQueryFile, DragQueryPoint |
|||||
Связанные coof |
мцения |
|||||
WM_DROPFILES |
||||||
Пример |
См. пример для функции DragAcceptFiles. |
|||||
DragQueryFile • Windows 98 • Windows 2000 |
||||||
Описание |
Функция DragQueryFile извлекает имена файлов, задействованных в операции перетаскивания. |
|||||
Синтаксис |
UINT DragQueryFile ( HDROP hDrop, UINT nFile, LPTSTR IpszFile, UINT cch) |
|||||
Параметры |
||||||
hDrop |
HDROP: Идентифицирует структуру, содержащую имена перетаскиваемых файлов. Этот дескриптор извлекается из буфера обмена либо из сообщения WM_DROPFILES. |
|||||
nfile |
UINT: Индекс файла для запроса. Если устанавливается значение OxFFFFFFFF, возвращается количество перетаскиваемых файлов. Если значение находится в диапазоне между 0 и общим количеством перетаскиваемых файлов, соответствующее ему имя файла копируется в буфер, на который указывает параметр IpszFile. |
|||||
IpszFile |
LPTSTR Указатель на буфер, который принимает имя перетаскиваемого файла. Принимает значения NULL для возврата количества символов, требуемых для хранения имени файла. |
|||||
cch |
UINT: Размер (в символах) буфера, на который указывает параметр IpszFile. |
|||||
Возвращаемое значение |
UINT: Когда функция копирует имя файла в буфер, значение возврата представляет собой количество скопированных символов, исключая завершающий нулевой символ. Если индекс имеет значение OxFFFFFFFF, значение возврата представляет собой количество перетаскиваемых файлов. Когда параметр IpszFile принимает значение NULL, значение возврата представляет собой размер в символах буфера, исключая завершающий нулевой символ. |
|||||
Включаемый файл |
shellapi.h |
|||||
См. также |
DragQueryPoint |
|||||
Связанные сообщения |
||||||
WM_DROPFILES |
||||||
Пример |
См. пример для функции DragAcceptFiles. |
|||||
DragQueryPoint • Windows 98 • Windows 2000 |
||||||
Описание |
Функция DragQueryPoint извлекает позицию курсора мыши в момент "отпускания" файла. Координаты берутся относительно окна, которое принимает сообщение WM_DROPFILES. |
|||||
Синтаксис |
BOOL DragQueryFile ( HDROP hDrop, LPPOINT Ippt ) |
|||||
Параметры |
||||||
hDrop |
HDROP: Идентифицирует структуру, содержащую имена перетаскиваемых файлов. Этот дескриптор извлекается из буфера обмена либо из сообщения WM_DROPFILES. |
|||||
Ippt |
LPPOINT: Указатель на структуру POINT, в которую функция вводит координаты курсора мыши в момент "отпускания" файла. |
|||||
Возвращаемое значение |
BOOL: Если перетаскивание осуществляется в клиентскую область окна, возвращается значение TRUE. В противном случае возвращается FALSE. |
|||||
Включаемыйфайл |
shellapi.h |
|||||
См. также |
DragQueryFile |
|||||
Связанные сообщения |
||||||
WM_DROPFILES |
||||||
Пример |
См. пример для функции DntgAcceptFiles. |
|||||
EmptyClipboard • Windows 98 • Windows 2000 |
||||||
Описание |
Функция EmptyClipboard удаляет содержимое буфера обмена и сопутствующие данные. Она удаляет данные, хранимые в каждом формате буфера обмена. Это гарантирует, что никакие данные случайно не останутся в буфере обмена при смене владельца. При вызове этой функции также устанавливается владелец буфера обмена. Для использования данной функции буфер обмена должен быть открыт. Прежнему владельцу буфера обмена отправляется сообщение WM_DESTROYCLIPBOARD. |
|||||
Синтаксис |
BOOL EmptyClipboard( VOID ) |
|||||
Параметры |
Функция не имеет параметров. |
|||||
Возвращаемое значение |
BOOL: TRUE, если буфер обмена очищен, и FALSE в случае ошибки. Для возврата кода ошибки следует воспользоваться функцией GetLastError. |
|||||
Включаемый файл |
winuser.h |
|||||
См. также |
OpenClipboard, CloseClipboard, SetClipboardData, GetLastError |
|||||
Связанные сообщения |
||||||
WM_DRAWCLIPBOARD, WM_CHANGECBCHAIN, WM_DESTROYCLIPBOARD |
||||||
Пример |
См. пример для функции ChangeClipboardChain. |
|||||
EnumClipboardFormats • Windows 98 • Windows 2000 |
||||||
Описание |
Функция EnumClipboardFormats перечисляет все форматы буфера обмена, воспроизводимые текущим владельцем буфера обмена. Она используется приложениями, которые поддерживают более одного способа чтения из буфера обмена. Приложение может использовать функцию EnumClipboardFormats для выбора наилучшего формата для чтения содержимого буфера обмена. Функция EnumClipboardFormats вызывается повторно для определения всех форматов. При первом вызове функции передается значение 0 и она возвращает первый из доступных форматов. При втором и последующем вызовах последний возвращенный формат используется в качестве параметра для следующего вызова. Данная последовательность повторяется до тех пор, пока функция не вернет значение 0. Это значение указывет, что выполнено считывание последнего формата. Функция EnumClipboardFormats возвращает форматы буфера обмена в том же порядке, в каком следовали вызовы функции SetClipboardData для помещения данных в буфер обмена. Приложение всегда должно помещать данные в буфер обмена в наиболее приемлемом формате (с минимальными потерями данных) и переходить к следующему наилучшему формату до тех пор, пока не останется форматов, которые могут быть воспроизведены. |
|||||
Синтаксис |
UINT EnumClipboardFormats ( UINT uFormat ) |
|||||
Параметры |
||||||
uFormat |
UINT: Номер формата, считанного последним. Значение 0 устанавливается для возврата первого из доступных форматов. Для возврата следующего доступного формата можно присвоить любое допустимое значение. |
|||||
Возвращаемое значение |
UINT: Номер следующего воспроизводимого формата буфера обмена. Возвращает 0, если считан последний формат. Кроме того, возвращает 0 в случае ошибки. Для возврата кода ошибки может использоваться функция GetLastError. |
|||||
Включаемый файл |
winuser.h |
|||||
См. также |
CountCIipboardFormats, GetClipboardFormatName, SetClipboardData, GetLastError |
|||||
Пример |
В следующем примере перечисляются все доступные форматы буфера обмена, когда пользователь выполняет щелчок на опции меню Test!. Имена зарегистрированных форматов буфера обмена (установленных приложениями, которые вызывают функцию RegisterClipboardFormat) могут быть извлечены с помощью функции GetClipboardFormatName. Имена предопределенных форматов нельзя вернуть через функцию GetClipboardFormatName. Листинг содержит функцию NameCIipFormat, которая возвращает имена предопределенных форматов. На рис. 18.2 показан список доступных форматов буфера обмена после использования приложения WordPad (входящего в пакет Windows 2000 и |
|||||
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.