以下是该方法的基本信息:
BOOL InvalidateRgn(CRgn* pRgn, BOOL bErase = TRUE);
- pRgn:一个指向 CRgn 对象的指针,指定要使其无效的区域。
- bErase:一个布尔值,指示是否擦除背景。如果为 TRUE,将擦除背景;如果为 FALSE,将保留背景。
返回值:
- 如果成功,返回值为非零;如果失败,返回值为零。
使用示例:
CWnd* pWnd = ...; // 通过某种方式获取 CWnd 对象的指针
CRgn myRegion;
// 假设在此处为 myRegion 赋值,表示要使其无效的区域
if (pWnd->InvalidateRgn(&myRegion))
{
// 使指定区域无效,并请求重新绘制
}
else
{
// 使区域无效失败
}
通过调用 InvalidateRgn 方法,您可以通知系统指定的区域已经过时,需要重新绘制。这允许您更加灵活地指定要刷新的区域,而不仅仅是整个客户区域。请注意,系统将在处理消息队列时进行重绘。
转载请注明出处:http://www.pingtaimeng.com/article/detail/23510/MFC/CWnd