### 函数功能

该函数填充矩形和三角形结构。

### 函数原型

BOOL GradientFill(HDC hdc, CONST PTRIVERTEX pVertex, DWORD dwNumVertex, CONST PVOID pMesh, DWORD dwNumMesh, DWORD dwMode)；

### 参数

hdc：指向目标设备环境的句柄。
pVertex：指向TRIVERTEX结构数组的指针，该数组中的每项定义了三角形顶点。
dwNumVertex：顶点数目。
pMesh：三角形模式下的GRADIENT_TRIANGLE结构数组，或矩形模式下的GRADIENT_RECT结构数组。
dwNumMesh：参数pMesh中的成员数目（这些成员是三角形或矩形）。
dwMode：指定倾斜填充模式。该参数可以包含下列值，这些值的含义为：
GRADIENT_FILL_RECT_H：在该模式下，两个端点表示一个矩形。该矩形被定义成左右边界具有固定颜色（由TRIVERTEX结构指定）。GDI从上至下插入颜色，并填充内部区域。
GRADIENT_FILL_RECT_V：在该模式下，两个端点表示一个矩形。该矩形定义其顶部和底部边界的颜色为固定值（通过TRIVERTEX结构指定），GDI从顶至底部边界插入颜色，并填充内部区域。
GRADIENT＿FILL＿TRIANGLE：在该模式下，TRIVERTEX结构数组以及描述单个三角形的数组索引序列被传给GDI。GDI在三角形顶点之间进行线性插值，并填充内部区域。在24和32位／像素模式下，绘图是直接进行。在16、8、4和1位／像素模式中进行抖动处理。

### 返回值

如果函数执行成功，那么返回值为TRUE；如果函数执行失败，则返回值为FALSE。
Windows NT：若想获得更多错误信息，请调用GetLastError函数。
备注：若想在矩形区域中加入一些平滑的阴影（底纹），请用三角形的三个顶点调用GradientFill函数。CDI将进行线性插值，并填充矩形区域。在绘制矩形时可能使用两种阴影模式在水平模式中，矩形从左至右开始变暗，在垂直模式中则是从上至下进行。
GradientFill函数使用网眼法（mesh method）来表示要绘制对象的端点。所有传给GradientFill的顶点都存储在pVertex数组中。参数pMesh指定了这些顶点如何连接形成一个对象。当填充矩形时，pMesh指向一个GRADIENT＿RECT结构数组。每一个GRADIENT＿RECT结构指定了pVertex数组中两个顶点的索引值，这两个顶点形成一个矩形的左上角和右下角坐标。
在填充三角形情况下，pMesh指向的是GRADIENT＿TRIANGLE结构数组。每一个GRADIENT＿TRIANGLE结构指定了pVertex数组中的3个顶点，这三个顶点形成一个三角形。
为了简化硬件加速，无需要求该例程在三角形内部具有像素完善特性。
若想了解更多信息，参考平滑成影、绘制带阴影的三解和矩形等方面的内容。

### 速查

Windows NT：5.0及以上版本；Windows：98及以上版本；Windows CE：不支持；头文件：wingdi.h；库文件：作为一个资源包含在msimg32.dll中。