LoadCursor

The LoadCursor function loads the specified cursor resource from the executable (.EXE) file associated with an application instance.

This function has been superseded by the LoadImage function

HCURSOR LoadCursor(
  HINSTANCE hInstance,  // handle to application instance
  LPCTSTR lpCursorName  // name string or cursor resource identifier
);
 

Parameters

hInstance
Handle to an instance of the module whose executable file contains the cursor to be loaded.
lpCursorName
Pointer to a null-terminated string that contains the name of the cursor resource to be loaded. Alternatively, this parameter can consist of the resource identifier in the low-order word and zero in the high-order word. The MAKEINTRESOURCE macro can also be used to create this value.

To use one of the Win32 predefined cursors, the application must set the hInstance parameter to NULL and the lpCursorName parameter to one the following values:
Value Description
IDC_APPSTARTING Standard arrow and small hourglass
IDC_ARROW Standard arrow
IDC_CROSS Crosshair
IDC_HAND Windows NT 5.0 and later: Hand
IDC_HELP Arrow and question mark
IDC_IBEAM I-beam
IDC_ICON Obsolete for applications marked version 4.0 or later.
IDC_NO Slashed circle
IDC_SIZE Obsolete for applications marked version 4.0 or later. Use IDC_SIZEALL.
IDC_SIZEALL Four-pointed arrow pointing north, south, east, and west
IDC_SIZENESW Double-pointed arrow pointing northeast and southwest
IDC_SIZENS Double-pointed arrow pointing north and south
IDC_SIZENWSE Double-pointed arrow pointing northwest and southeast
IDC_SIZEWE Double-pointed arrow pointing west and east
IDC_UPARROW Vertical arrow
IDC_WAIT Hourglass

Return Values

If the function succeeds, the return value is the handle to the newly loaded cursor.

If the function fails, the return value is NULL. To get extended error information, call GetLastError.

Remarks

The LoadCursor function loads the cursor resource only if it has not been loaded; otherwise, it retrieves the handle to the existing resource. This function returns a valid cursor handle only if the lpCursorName parameter points to a cursor resource. If lpCursorName points to any type of resource other than a cursor (such as an icon), the return value is not NULL, even though it is not a valid cursor handle.

The LoadCursor function searches the cursor resource most appropriate for the cursor for the current display device. The cursor resource can be a color or monochrome bitmap.

Windows CE: Use the cursor component when targeting a platform that does not support mouse cursors. The only cursor this component supports is the wait cursor (IDC_WAIT). Use the LoadCursor function in conjunction with the SetCursor function to set the wait cursor.

SetCursor(LoadCursor(NULL, IDC_WAIT));

Use the mcursor component when targeting a platform that does support mouse cursors. This component supports the LoadCursor function the same way Windows desktop platforms do, except that it only supports monochrome cursors. Windows CE does not support color cursors. An attempt to load a color cursor will have unpredictable results.

See Also

Cursors Overview, Cursor Functions, LoadImage, MAKEINTRESOURCE, SetCursor, SetCursorPos, ShowCursor