Поделиться через


Функция CreateCursor (winuser.h)

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

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

Синтаксис

HCURSOR CreateCursor(
  [in, optional] HINSTANCE  hInst,
  [in]           int        xHotSpot,
  [in]           int        yHotSpot,
  [in]           int        nWidth,
  [in]           int        nHeight,
  [in]           const VOID *pvANDPlane,
  [in]           const VOID *pvXORPlane
);

Параметры

[in, optional] hInst

Тип: HINSTANCE

Дескриптор текущего экземпляра приложения, создающего курсор.

[in] xHotSpot

Тип: int

Горизонтальная позиция горячей точки курсора.

[in] yHotSpot

Тип: int

Вертикальная позиция горячей точки курсора.

[in] nWidth

Тип: int

Ширина курсора в пикселях.

[in] nHeight

Тип: int

Высота курсора в пикселях.

[in] pvANDPlane

Тип: const VOID*

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

[in] pvXORPlane

Тип: const VOID*

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

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

Тип: HCURSOR

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

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

Замечания

Чтобы определить номинальный размер курсора, используйте функцию GetSystemMetrics, указав значение SM_CXCURSOR или SM_CYCURSOR. Кроме того, можно использовать версию ЭТОГО API с поддержкой DPI, см. GetSystemMetricsForDpi. Дополнительные сведения см. в статье Разработка классических приложений высокого уровня DPI в Windows.

Дополнительные сведения о параметрах pvANDPlane и pvXORPlane см. в описании параметра lpBits функции CreateBitmap.

CreateCursor применяет следующую таблицу истины к bitmasks AND и XOR:

Битовая маска И Битовая маска XOR Дисплей
0 0 Чёрный
0 1 Белый
1 0 Экран
1 1 Обратный экран

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

виртуализация DPI

Этот API не участвует в виртуализации DPI. Возвращаемый результат имеет физические координаты и не влияет на DPI вызывающего потока. Обратите внимание, что созданный курсор по-прежнему может быть масштабирован для сопоставления DPI любого заданного окна, в котором он нарисован.

Примеры

Пример см. в статье Созданиекурсора.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка winuser.h (включая Windows.h)
библиотеки User32.lib
DLL User32.dll

См. также

CreateIcon

CreateIconIndirect

DestroyCursor

GetSystemMetrics

SetCursor

курсоров