HRGN hrgn1 = CreateRectRgn(10, 10, 200, 200);//创建矩形区域 HDC hdc = ::GetDC(m_hWnd); int n = SelectClipRgn(hdc, hrgn1);//选择剪切区域 int n1=::IntersectClipRect(hdc, 100, 100, 300,300); //创建一个新的剪裁区域,他是前一个剪裁区域与一个矩形的交集 /* 参数1:HDC hdc 设备环境句柄 参数2:int 定义了矩形区域左上角的逻辑X坐标 参数3:int 定义了矩形区域左上角的逻辑Y坐标 参数4:int 定义了矩形区域右下角的逻辑X坐标 参数5:int 定义了矩形区域右下角的逻辑Y坐标 返回值:该返回值表明了新的剪切区域的复杂度,它可是如下几种形式: NULLREGION:剪切区域为空; SIMPLEREGION:剪切区域是单个矩形; COMPIEXREGION:剪切区域有多个矩形; ERROR:剪切区域创建失败 注释:矩形的底边和右边并不排除在剪切区域之外 */ HRGN hrgn = CreateRectRgn(10, 10, 400, 400);//创建矩形区域 HBRUSH hbr = CreateSolidBrush(RGB(0, 0, 255)); //单色的画刷 FillRgn(hdc, hrgn, hbr); //用画刷填充区域 ::ReleaseDC(m_hWnd, hdc);
标签:剪切,int,区域,hdc,IntersectClipRect,GDI,矩形,剪裁 From: https://www.cnblogs.com/liming19680104/p/17406398.html