CopyCursor, DrawIcon, DrawIconEx. 1 страница



Тарас Сорока

Русский справочник по Win32 API

 

Русский справочник по Win32 API

 

От изготовителя fb2.

 

 

Данная книга (кроме всего прочего) содержит таблицы, к сожалению не все читалки могут их воспроизводить.

 

Давайте, протестируем вашу читалку.

 

 

 1 строка, 1 столбец   1 строка, 2 столбец   1 строка, 3 столбец  
2 строка 1 столбец   2 строка 2 столбец   спорю, что не догадаетесь,  какая это строка  

 

Если, вместо симпатичной таблицы вы увидели такое:

 

1 строка, 1 столбец

1 строка, 2 столбец

1 строка, 3 столбец

2 строка 1 столбец

2 строка 2 столбец

...

 

Значит ваша читалка таблиц не видит, что очень жаль, т.к. в книге их 49.

Что делать?... Ну, я поступаю так. В Mozilla Firefox поставил плагин для чтения fb2, и все проблемы решены, конечно, возможны и другие варианты...

 

 

Вот и все.

Успехов w_cat.

 

Цвета

 

CreatePalette

 

 

Функция CreatePalette создает логическую цветовую палитру.

 

HPALETTE CreatePalette (

 

CONST LOGPALETTE * lplgpl // указатель на логическую цветовую палитру

);

 

Параметры

 

lplgpl ‑ указывает на структуру типа LOGPALETTE , которая содержит информацию о цветах в логической палитре.

 

Возвращаемые значения

 

В случае успеха возвращается дескриптор, который идентифицирует логическую палитру.

В случае неудачи возвращается NULL . Для получения дополнительной информации об ошибке вызовите функцию GetLastError .

 

Комментарии

 

Приложение может определить, поддерживает ли устройство операции с палитрами, вызвав GetDeviceCaps и определив константу RASTERCAPS .

Создав логическую палитру, приложение может ее выбрать в контекст устройства, вызвав функцию SelectPalette . Палитра, выбранная в контекст устройства, может быть реализована функцией RealizePalette .

Когда вы более не нуждаетесь в палитре, вызовите функцию DeleteObject для ее удаления.

 

См. также

 

DeleteObject, GetDeviceCaps, LOGPALETTE, RealizePalette, SelectPalette .

 

 

GetNearestColor

 

 

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

 

COLORREF GetNearestColor (

 

HDC  hdc , // дескриптор контекста устройства

COLORREF  crColor // подбираемый цвет

);

 

Параметры

 

hdc ‑ идентифицирует контекст устройства.

crColor ‑ определяет цветовое значение, идентифицирующее запрашиваемый цвет.

 

Возвращаемые значения

 

В случае успеха возвращается цвет из системной палитры, который соответствует данному цветовому значению.

В случае неудачи возвращается CLR _ INVALID . Для получения дополнительной информации об ошибке вызовите функцию GetLastError .

 

См. также

 

GetDeviceCaps, GetNearestPaletteIndex, COLORREF .

 

 

GetSystemPaletteEntries

 

 

Функция GetSystemPaletteEntries извлекает диапазон вхождений в палитру из системной палитры, которая связана с указанным контекстом устройства (device context).

 

UINT GetSystemPaletteEntries (

HDC  hdc , // дескриптор контекста устройства

UINT  iStartIndex , // первое извлекаемое вхождение в палитру

UINT  nEntries , // количество извлекаемых вхождений в палитру

LPPALETTEENTRY  lppe // массив, получающий вхождения в палитру

);

 

Параметры

 

hdc ‑ дескриптор контекста устройства

iStartIndex ‑ определяет первое извлекаемое вхождение в системную палитру.

nEntries ‑ определяет количество извлекаемых из системной палитры вхождений.

lppe ‑ указатель на массив структур типа PALETTEENTRY для получения вхождений в палитру. Число элементов в массиве должно быть не меньше значения, заданного параметром nEntries . Если значение параметра lppe равно NULL, функция возвращает общее количество вхождений в системную палитру.

 

Возвращаемые значения

 

В случае успеха возвращается количество вхождений, извлеченных из палитры.

В случае неудачи возвращается нуль.

Windows NT/2000/XP: Для получения дополнительной информации об ошибке вызовите функцию GetLastError .

 

Комментарии

 

Приложение может определить, поддерживает ли устройство операции с палитрой, вызвав функцию GetDeviceCaps с параметром RASTERCAPS.

 

Требования

 

Windows NT/2000/XP: Включена в Windows NT 3.1 и выше.

Windows 95/98/Me: Включена в Windows 95 и выше.

Заголовок: Объявлена в Wingdi.h; подключатьWindows.h.

Библиотека: Используйте Gdi32.lib.

 

См. также

 

GetDeviceCaps , GetPaletteEntries , PALETTEENTRY .

 

 

ResizePalette

 

 

Функция ResizePalette увеличивает или уменьшает размер логической палитры, основываясь на указанном значении.

 

BOOL ResizePalette (

 

HPALETTE  hpal , // дескриптор логической палитры

UINT  nEntries // число вхождений в логическую палитру

);

 

Параметры

 

hpal ‑ идентифицирует изменяемую логическую палитру.

nEntries ‑ определяет число вхождений в палитру после изменения ее размера.

 

Возвращаемые значения

 

В случае успеха возвращается ненулевое значение.

В случае неудачи возвращается нуль. Для получения дополнительной информации об ошибке вызовите функцию GetLastError .

 

Комментарии

 

Приложение может определить, поддерживает ли устройство операции с палитрой, вызвав функцию GetDeviceCaps с параметром RASTERCAPS .

Если приложение вызывает ResizePalette для уменьшения размера палитры, вхождения, оставшиеся в измененной палитре, не изменяются. Если приложение вызывает ResizePalette для увеличения размера палитры, то новым вхождениям в палитру присваивается черный цвет и их флаги устанавливаются в нуль.

 

См. также

 

GetDeviceCaps .

 

 

UpdateColors

 

 

Функция UpdateColors обновляет клиентскую область указанного контекста устройства, переустанавливая соответствие текущих цветов в клиентской области текущей реализованной логической палитры.

 

BOOL UpdateColors (

 

HDC  hdc // дескриптор контекста устройства

);

 

Параметры

 

hdc ‑ идентифицирует контекст устройства.

 

Возвращаемые значения

 

В случае успеха возвращается ненулевое значение.

В случае неудачи возвращается нуль. Для получения дополнительной информации вызовите функцию GetLastError .

 

Комментарии

 

Приложение может определить, поддерживает ли устройство операции с палитрой, вызвав функцию GetDeviceCaps с параметром RASTERCAPS .

Неактивное окно с реализованной логической палитрой может вызвать функцию UpdateColors в качестве альтернативы перерисовке его клиентской области при смене системной палитры.

Функция UpdateColors обычно обновляет клиентскую область быстрее, чем перерисовка данной области. Тем не менее, поскольку UpdateColors выполняет преобразование цвета, основанное на цвете каждого пикселя перед изменением системной палитры, вызов этой функции приводит к потере цветовой точности.

Функция должна вызываться сразу после получения приложением сообщения WM _ PALETTECHANGED .

 

См. также

 

GetDeviceCaps, RealizePalette .

 

Атомы

 

Функции

 

AddAtom

 

 

Функция AddAtom добавляет строку символов в таблицу локальных атомов и возвращает уникальное значение (атом), идентифицирующее строку.

 

ATOM AddAtom (

 

LPCTSTR  lpString // указатель на добавляемую строку

);

 

Параметры

 

lpString ‑ указатель на добавляемую строку, завершающуюся нулем. Строка может иметь максимальный размер в 255 байт. Строки, отличающиеся только регистром, считаются идентичными.

 

Возвращаемые значения

 

В случае успеха возвращается созданный атом.

В случае неудачи возвращается нуль. Для получения дополнительной информации об ошибке вызовите функцию GetLastError .

 

Комментарии

 

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

Для преобразования значения WORD в строку, которая может быть добавлена функцией AddAtom в таблицу атомов, может быть использован макрос MAKEINTATOM .

AddAtom возвращает строковый атом, чье значение лежит в диапазоне от 0 xC 000 до 0 xFFFF .

Если значение lpString имеет вид "#1234", AddAtom возвращает целый атом, чье значение являет собой 16‑битное представление десятичного числа, указанного в строке (в данном случае 0 x 04 D 2). Если указанное десятичное значение представляет собой 0 x 0000 или значение, лежащее в диапазоне от 0 xC 000 до 0 xFFFF, возвращается нуль, указывающий на ошибку. Если значение lpString лежит в диапазоне от 0 x 0001 до 0 xBFFF, возвращается младшее слово lpString .

 

См. также

 

DeleteAtom, FindAtom, GetAtomName, GlobalAddAtom, GlobalDeleteAtom, GlobalFindAtom, GlobalGetAtomName, MAKEINTATOM .

 

 

DeleteAtom

 

 

Функция DeleteAtom уменьшает счетчик ссылок локальной строки атома. Если счетчик ссылок атома достигает нулевого значения, DeleteAtom удаляет строку, связанную с атомом, из таблицы локальных атомов.

 

ATOM DeleteAtom (

 

ATOM  nAtom // удаляемый атом

);

 

Параметры

 

nAtom ‑ идентифицирует удаляемые атом и строку символов.

 

Возвращаемые значения

 

В случае успеха возвращается нуль.

В случае неудачи возвращается значение параметра nAtom . Для получения дополнительной информации об ошибке вызовите функцию GetLastError .

 

Комментарии

 

Счетчик ссылок строки атома определяет, сколько раз строка была добавлена или удалена в/из таблицы локальных атомов. Функция DeleteAtom уменьшает счетчик ссылок строки, которая уже содержится в таблице локальных атомов, при каждом вызове, но удаляет строку только по достижению счетчиком нуля.

Единственный путь убедиться в том, что атом был удален из таблицы атомов ‑ повторяющийся вызов функции до тех пор, пока ее вызов не закончится неудачей. Вызов функции FindAtom или DeleteAtom завершится неудачей, когда значение счетчика ссылок строки уменьшено до нуля.

Вызов DeleteAtom не воздействует на целый атом (атом, созданный макросом MAKEINTATOM ). Функция всегда возвращает нуль для целого атома.

 

См. также

 

AddAtom, FindAtom, GlobalAddAtom, GlobalDeleteAtom, GlobalFindAtom, MAKEINTATOM .

 

 

FindAtom

 

 

Функция FindAtom ищет в таблице локальных атомов заданную строку символов и возвращает атом, связанный с данной строкой.

 

ATOM FindAtom (

 

LPCTSTR  lpString // указатель на строку поиска

);

 

Параметры

 

lpString ‑ указывает на завершающуюся нулем строку символов.

 

Возвращаемые значения

 

В случае успеха, возвращается атом, связанный с данной строкой.

 

Комментарии

 

Не смотря на то, что Windows сохраняет регистр строки в таблице атомов, поиск, выполняемый функцией FindAtom , не чувствителен к регистру.

 

См. также

 

AddAtom, DeleteAtom, GlobalAddAtom, GlobalDeleteAtom, GlobalFindAtom .

 

 

GetAtomName

 

 

Функция GetAtomName возвращает копию символьной строки, связанной с указанным локальным атомом. Эта функция заменяет функцию GetAtomHandle .

 

UINT GetAtomName (

 

ATOM  nAtom , // атом, идентифицирующий символьную строку

LPTSTR  lpBuffer , // адрес буфера для строки атома

int  nSize // размер буфера

);

 

Параметры

 

nAtom ‑ определяет локальный атом, который идентифицирует получаемую символьную строку.

lpBuffer ‑ указывает на буфер для символьной строки.

nSize ‑ определяет размер буфера в символах.

 

Возвращаемые значения

 

В случае успеха возвращается длина скопированной в буфер строки, в символах, не считая завершающий нулевой символ.

В случае неудачи возвращается нуль. Для получения дополнительной информации об ошибке вызовите функцию GetLastError .

 

Примечания

 

Строка, возвращаемая для целочисленного атома (созданного макросом MAKEINTATOM ) ‑ завершающаяся нулем строка, в которой первым символом является символ '#', а оставшиеся символы представляют беззнаковое целое, первоначально переданное MAKEINTATOM .

 

См. также

 

AddAtom, DeleteAtom, FindAtom, GlobalAddAtom, GlobalDeleteAtom, GlobalFindAtom, GlobalGetAtomName, MAKEINTATOM .

 

 

GlobalAddAtom

 

 

Функция GlobalAddAtom добавляет строку символов в таблицу глобальных атомов и возвращает уникальное значение (атом), идентифицирующее строку.

 

ATOM GlobalAddAtom (

 

LPCTSTR  lpString // указатель на добавляемую строку

);

 

Параметры

 

lpString ‑ указатель на добавляемую строку, завершающуюся нулем. Строка может иметь максимальный размер в 255 байт. Строки, отличающиеся только регистром, считаются идентичными.

 

Возвращаемые значения

 

В случае успеха возвращается созданный атом.

В случае неудачи возвращается нуль. Для получения дополнительной информации об ошибке вызовите функцию GetLastError .

 

Комментарии

 

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

Строка, связанная с атомом, не удаляется из памяти до тех пор, пока ее счетчик ссылок не станет равен нулю. Для большей информации смотрите функцию GlobalDeleteAtom .

Глобальные атомы не удаляются автоматически по завершению приложения. Для каждого вызова функции GlobalAddAtom должен быть соответствующий вызов функции GlobalDeleteAtom .

GlobalAddAtom возвращает строковый атом, чье значение лежит в диапазоне от 0 xC 000 до 0 xFFFF .

Если значение lpString имеет вид "#1234", GlobalAddAtom возвращает целый атом, чье значение являет собой 16‑битное представление десятичного числа, указанного в строке (в данном случае 0 x 04 D 2). Если указанное десятичное значение представляет собой 0 x 0000 или значение, лежащее в диапазоне от 0 xC 000 до 0 xFFFF, возвращается нуль, указывающий на ошибку. Если значение lpString лежит в диапазоне от 0 x 0001 до 0 xBFFF, возвращается младшее слово lpString .


Дата добавления: 2021-01-21; просмотров: 47; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!