См. также
CopyIcon, GetCursor, SetCursor, ShowCursor.
Функция CreateCursorсоздает курсор, имеющий указанный размер, битовый шаблон и горячую точку.
HCURSOR CreateCursor(
HINSTANCE hInst , // дескриптор экземпляра приложения
int xHotSpot , // положение горячей точки по горизонтали
int yHotSpot , // положение горячей точки по вертикали
int nWidth , // ширина курсора
int nHeight , // высота курсора
CONST VOID* pvANDPlane , // указатель на массив битовой маски И
CONST VOID* pvXORPlane // указатель на массив битовой маски ИЛИ
);
Параметры
hInst - идентифицирует текущий экземпляр приложения, создающего курсор.
xHotSpot - определяет положение горячей точки курсора по горизонтали.
yHotSpot - определяет положение горячей точки курсора по вертикали.
nWidth - определяет ширину курсора в пикселях.
nHeight - определяет высоту курсора в пикселях.
pvANDplane - указывает на массив байт, содержащих значения битов для битовой маски И курсора, как в аппаратно-зависимом монохромном растровом изображении.
pvXORplane - указывает на массив байт, содержащих значения битов для битовой маски ИЛИ курсора, как в аппаратно-зависимом монохромном растровом изображении.
Возвращаемые значения
В случае успеха возвращается значение, идентифицирующее курсор.
В случае неудачи возвращается NULL . Для получения дополнительной информации об ошибке вызовите функцию GetLastError.
Комментарии
Значения параметров nWidth и nHeight должны указывать ширину и высоту, поддерживаемые текущим драйвером дисплея, потому что система не может создать курсоры других размеров. Для определения того, какие ширина и высота поддерживаются драйвером дисплея, вызовите функцию GetSystemMetrics, указав значения SM _ CXCURSOR и SM _ CYCURSOR .
Перед завершением приложение должно вызвать функцию DestroyCursorдля освобождение системных ресурсов, связанных с курсором.
См. также
CreateIcon, DestroyCursor, GetModuleHandle, GetSystemMetrics, SetCursor.
Функция DestroyCursorразрушает курсор, созданный функцией CreateCursor, и освобождает память, занимаемую курсором. Не используйте функцию для разрушения курсора, который не был создан функцией CreateCursor.
BOOL DestroyCursor(
HCURSOR hCursor // дескриптор разрушаемого курсора
);
Параметры
hCursor - идентифицирует разрушаемый курсор. Курсор не должен использоваться.
Возвращаемые значения
В случае успеха возвращается ненулевое значение.
В случае неудачи возвращается нуль. Для получения дополнительной информации об ошибке вызовите функцию GetLastError.
См. также
CreateCursor.
Функция GetClipCursorизвлекает экранные координаты прямоугольной области, в которую заключен курсор.
BOOL GetClipCursor(
LPRECT lpRect // адрес структуры для прямоугольника
);
Параметры
lpRect - указываете на структуру типа RECT, которая получает экранные координаты прямоугольника. Структура получает размеры экрана, если курсор не заключен в прямоугольник.
Возвращаемые значения
В случае успеха возвращается ненулевое значение.
В случае неудачи возвращается нуль. Для получения дополнительной информации об ошибке вызовите функцию GetLastError.
Комментарии
Курсор является разделяемым ресурсом. Если приложение заключает курсор в прямоугольную область функцией ClipCursor, оно затем должно освободить курсор, используя функцию ClipCursor ,перед тем, как уступить курсор другому приложению.
Вызывающий процесс должен иметь доступ WINSTA _ READATTRIBUTES к оконной станции ( window station ). Разъяснение термина window station смотрите в описании функции CreateWindowStation.
См. также
ClipCursor, GetCursorPos, RECT.
Функция GetCursorвозвращает дескриптор текущего курсора.
HCURSOR GetCursor( VOID)
Параметры
Функция не имеет параметров.
Возвращаемые значения
В случае успеха функция возвращает дескриптор текущего курсора.
Если курсора нет, возвращает NULL.
См. также
SetCursor.
Функция GetCursorPosизвлекает положение курсора в экранных координатах.
Читать дальше