Выбрать главу

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

Комментарии

Положение курсора всегда дается в экранных координатах и не подвержено воздействию режима отображения окна, которое содержит курсор.

Вызывающий процесс должен иметь доступ WINSTA _ READATTRIBUTES к оконной станции ( window station ). Разъяснение термина window station смотрите в описании функции CreateWindowStation .

См. также

ClipCursor, POINT, SetCursor, SetCursorPos, ShowCursor .

LoadCursor

Функция LoadCursor загружает указанный ресурс курсора из исполняемого (. EXE ) файла, связанного с экземпляром приложения.

HCURSOR LoadCursor (

HINSTANCE hInstance , // дескриптор экземпляра приложения

LPCTSTR lpCursorName // строка с именем курсора или

// идентификатор ресурса

);

Параметры

hInstance - идентифицирует экземпляр модуля, чей исполняемый файл содержит курсор.

lpCursorName - указывает на завершающуюся нулем строку, которая сдержит имя ресурса загружаемого курсора. В качестве альтернативы, значение этого параметра может содержать идентификатор ресурса в младшем слове и нуль в старшем. Используйте макрос MAKEINTRESOURCE для создания данного значения.

Для использования предопределенных курсоров Windows установите значение параметра hInstance в NULL, а значение параметра lpCursorName в одно из следующих значений:

Значение

Описание

IDC_ARROW

Обычный курсор-стрелка.

IDC_IBEAM

Курсор в виде буквы " I ".

IDC_WAIT

Курсор "большие песочные часы".

IDC_CROSS

Курсор-перекрестие.

IDC_UPARROW

Курсор "стрелка вверх".

IDC_SIZE

Только Windows NT : четырехконечная стрелка

IDC _ ICON

Только Windows NT : пустая иконка.

IDC_SIZENWSE

Курсор изменения размера. Ориентирован с северо-запада на юго-восток.

IDC_SIZENESW

Курсор изменения размера. Ориентирован с северо-востока на юго-запад.

IDC_SIZEWE

Горизонтальный курсор изменения размера.

IDC_SIZENS

Вертикальный курсор изменения размера.

IDC_SIZEALL

Курсор изменения всех размеров. То же, что и IDC _ SIZE.

IDC _ NO

Перечеркнутый наискосок круг.

IDC _ APPSTARTING

Курсор "маленькие песочные часы со стрелкой".

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

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

Комментарии

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

LoadCursor просматривает ресурс на предмет курсора, наиболее подходящего для текущего устройства изображения. Ресурс курсора может быть цветным или монохромным битовым образом.

См. также

LoadImage, MAKEINTRESOURCE, SetCursor, SetCursorPos, ShowCursor .

LoadCursorFromFile

Функция LoadCursorFromFile создает курсор, основанный на данных, содержащихся в файле. Файл задается его именем или идентификатором системного курсора. Функция возвращает дескриптор созданного курсора. Файлы, содержащие данные, могут быть либо файлами курсоров (. CUR ), либо файлами анимированных курсоров (. ANI ).

HCURSOR LoadCursorFromFile (

LPCTSTR lpFileName // указатель на имя файла с курсором или

// идентификатор системного курсора

);

Параметры

lpFileName - указывает на источник файловых данных, используемых для создания курсора. Файлы, должны быть либо файлами курсоров (. CUR ), либо файлами анимированных курсоров (. ANI ).

Если старшее слово lpFileName не равно нулю, то значение lpFileName указывает на строку с полным именем файла, содержащего данные для курсора.

Если старшее слово lpFileName равно нулю, нижнее слово представляет собой идентификатор системного курсора. Затем функция просматривает секцию [ Cursors ] в файле WIN . INI на предмет файла, связанного с именем указанного системного курсора. Ниже приводится список имен системных курсоров и идентификаторов:

Имена системных курсоров

Идентификаторы системных курсоров

"Arrow"

OCR_NORMAL

"IBeam"

OCR_IBEAM

"Wait"

OCR_WAIT

"Crosshair"

OCR_CROSS

"UpArrow"

OCR_UP

"Size"

OCR_SIZE

"Icon"

OCR_ICON

"SizeNWSE"

OCR_SIZENWSE

"SizeNESW"

OCR_SIZENESW

"SizeWE"

OCR_SIZEWE

"SizeNS"

OCR_SIZENS

"SizeAll"

OCR_SIZEALL

"No"

OCR_NO

"AppStarting"

OCR_APPSTARTING

Например, если в WIN . INI содержится следующее:

[Cursors]

Arrow = "arrow.ani"

то вызов LoadCursorFromFile (( LPWSTR ) OCR _ NORMAL ) заставит функцию LoadCursorFromFile получить данные из файла ARROW . ANI . Если WIN . INI не содержит строки для указанного системного курсора, вызов функции завершится неудачей и функция вернет NULL .

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

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