该函数使用当前画笔在指定的设备环境中绘制多个关闭的多边形,并使用设备环境当前的画刷和多边形填充模式填充这些多边形。API函数。uses windows; BOOL PolyPolygon( HDC hdc, // handle of device context CONST POINT *lpPoints, // points to array of vertices for all polygons CONST INT *lpPolyCounts,// points to array with count of vertices for each polygon
BOOL PolyPolygon( HDC hdc, // handle of device context
CONST POINT *lpPoints, // points to array of vertices for all polygons
CONST INT *lpPolyCounts,// points to array with count of vertices for each polygon
int nCount // count of polygons {多边形的个数}
)例子:
procedure Tform1..................
var
PointArray: Array[0..9] of Tpoint; //保存多边形顶点
NPoints: array[0..1] of Integer; //每个多边形的顶点数
begin
{第一个多边形}
PointArray[0].x := 50;
PointArray[0].y := 50;
PointArray[1].x := 100;
PointArray[1].y := 50;
PointArray[2].x := 125;
PointArray[2].y := 75;
PointArray[3].x := 100;
PointArray[3].y := 100;
PointArray[4].x := 50;
PointArray[4].y := 100;
PointArray[5].x := 25;
PointArray[5].y := 75;
{第二个多边形}
PointArray[6].x := 200;
PointArray[6].y := 25;
PointArray[7].x := 300;
PointArray[7].y := 25;
PointArray[8].x := 300;
PointArray[8].y := 125;
PointArray[9].x := 200;
PointArray[9].y := 125;
{ 标识每个多边形有多少个顶点}
NPointts[0] := 6;
NPointts[1] := 4; PolyPolyGon(Canvas.Handle, PointsArray, NPoints, 2) ;
end;