2个多边形,其中一个包围另一个,如何将中间的环带区域涂成红色

var a, b, c: HRGN;
hbr: HBRUSH;
begin
// 2个多边形,其中一个包围另一个,如何将中间的环带区域涂成红色

hbr := CreateSolidBrush(clRed);
a:=CreateRectRgn(100,200,400,400);
b:=CreateRoundRectRgn(120,220,300,350,100,100);
c:=CreateRectRgn(0,0,1,1);
CombineRgn(c, a, b, RGN_DIFF);
FillRgn(Canvas.Handle,c, hbr);


end;

原文地址:https://www.cnblogs.com/yzryc/p/7677634.html