### 函数功能

该函数确定光标的形状。

### 函数原型

HCURSOR SetCursor（HCURSOR hCursor）；

### 参数

hCursor：光标的句柄，该光标由CreateCursor函数载入。如果该参数为NULL，则该光标从屏幕上移开。在Windows95中该光标的宽和高是GetSysfemMefirics 函数的返回值SM_CXCURSOR和观_CYCURSOR，并且光标的位深必须和显示器的位深相匹配，或者光标是单色的。

### 返回值

如果有前一个光标，则返回值是前光标的句柄；如果没有前光标，则返回值是NUL。
备注：仅当新光标与前光标不同时，才设置该光标，不然的话，该函数立即返回。该光标是一个共享资源。一个窗口仅当光标在其客户区域，或者它正在捕捉鼠标输入时，它才设置光标的形状。在一个没有鼠标的系统中，该窗口在光标离开它的客户区域或它要把控制权交给其他窗口之前，它会恢复以前的光标。 如果应用程序必须在窗口中设置光标，必须确保指定窗口类的类光标被设为NULL，如果类光标不是NULL，则每次移动鼠标时，系统都要恢复类光标。如果内部的光标显不计数值小于零，则光标不在屏幕上显示。当一个应用程序使用ShowCursor函数隐藏光标的次数多于显示光标的次数时，则会发生这种情况。Windows CE：当一个目标平台不支持鼠标光标时，使用cursor光标组件，该光标组件仅支持等待光标，设置等待光标，使用如下的代码：SetCursor（LoadCursor（NULL，IDC_WAIT））；当一个目标平台不支持鼠标光标时，使用mcursor光标组件。该组件不支持彩色光标。

### 速查

Window NT：3.1及以上版本；Windows：95及以上版本；Windows CE：1.0及以上版本；头文件：winuser.h；库文件：user32.lib。