Función CreateCursor (winuser.h)

Crea un cursor monocromático que tiene el tamaño, los patrones de bits y la zona activa especificados.

Para crear un cursor coloreado en tiempo de ejecución, puede usar la función CreateIconIndirect , que crea un cursor basado en el contenido de una estructura ICONINFO .

Sintaxis

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
);

Parámetros

[in, optional] hInst

Tipo: HINSTANCE

Identificador de la instancia actual de la aplicación que crea el cursor.

[in] xHotSpot

Tipo: int

Posición horizontal del punto activo del cursor.

[in] yHotSpot

Tipo: int

Posición vertical de la zona activa del cursor.

[in] nWidth

Tipo: int

Ancho del cursor, en píxeles.

[in] nHeight

Tipo: int

Alto del cursor, en píxeles.

[in] pvANDPlane

Tipo: const VOID*

Matriz de bytes que contiene los valores de bits para la máscara AND del cursor, como en un mapa de bits monocromático. Vea Notas.

[in] pvXORPlane

Tipo: const VOID*

Matriz de bytes que contiene los valores de bits de la máscara XOR del cursor, como en un mapa de bits monocromático. Vea Notas.

Valor devuelto

Tipo: HCURSOR

Si la función se ejecuta correctamente, el valor devuelto es un identificador para el cursor.

Si la función no se realiza correctamente, el valor devuelto es NULL. Para obtener información de error extendida, llame a GetLastError.

Comentarios

Para determinar el tamaño nominal de un cursor, use la función GetSystemMetrics , especificando el valor SM_CXCURSOR o SM_CYCURSOR . Además, puede usar la versión compatible con PPP de esta API, consulte (GetSystemMetricsForDpi)(/windows/win32/api/winuser/nf-winuser-getsystemmetricsfordpi). Para obtener más información, vea Desarrollo de aplicaciones de escritorio con valores altos de PPP en Windows.

Para obtener más información sobre los parámetros pvANDPlane y pvXORPlane , vea descripción del parámetro lpBits de la función CreateBitmap .

CreateCursor aplica la siguiente tabla de verdad a las máscaras de bits AND y XOR:

Máscara de bits AND Máscara de bits XOR Pantalla
0 0 Negro
0 1 Blanco
1 0 Screen
1 1 Pantalla inversa

Antes de cerrar, una aplicación debe llamar a la función DestroyCursor para liberar los recursos del sistema asociados al cursor.

Virtualización de PPP

Esta API no participa en la virtualización de PPP. La salida devuelta es en términos de coordenadas físicas y no se ve afectada por el PPP del subproceso que realiza la llamada. Tenga en cuenta que el cursor creado todavía se puede escalar para que coincida con el PPP de cualquier ventana determinada en la que se dibuja.

Ejemplos

Para obtener un ejemplo, consulte Creación de un cursor.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winuser.h (incluya Windows.h)
Library User32.lib
Archivo DLL User32.dll

Consulte también

CreateIcon

CreateIconIndirect

DestroyCursor

GetSystemMetrics

SetCursor

Cursores