登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

面包会有的

... ...

 
 
 

日志

 
 

剪切区域  

2011-02-09 12:48:36|  分类: VC++ |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

剪切区域也是区域的一种, 窗口在重绘时只会重绘剪切区域中的内容

 

下面这段代码是从一本书的配套光盘里取出来的,是从CButton类派生的,实现三角形按钮。

 if ((state & ODS_FOCUS)) {//焦点
  CRgn rgn;
  rgn.CreateRectRgn(rect.left, rect.top, rect.right, rect.bottom);//复制客户区矩形
  pDC->SelectClipRgn(&rgn);//该函数选择一个区域作为指定设备环境的当前剪切区域//剪切区域也是区域的一种, 窗口在重绘时只会重绘剪切区域中的内容
  pDC->SelectObject(FocusPen);

 

==========================函数解释==================================

SelectClipRgn
  函数功能:该函数选择一个区域作为指定设备环境的当前剪切区域。
  函数原型:int SelectClipRgn(HDc hdc, HRGN hrgn);
  参数:
  hdc:设备环境句柄。
  hrgn:标识被选择的区域。
  返回值:返回值表明了区域的复杂度,可以是下列值之一。
  NULLREGION:区域为空;
  SIMPLEREGION:区域为单个矩形;
  COMPLEXREGION:区域为多个矩形;
  ERROR:发生错误(以前的剪切区域不受影响)。
  Windows NT:若想获得更多错误信息,请调用GetLastError函数。
  注释:只有选择区域的一个拷贝被使用,区域本身可被任何其他的设备环境所选择,并且它还被删除。
  SelectclipRgn函数假设指定区域的坐标在设备联合中已经定义。
  要想删除一个设备环境的剪切区域,指定一个空(NULL)区域句柄。
  速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;头文件:wingdi.h;库文件:gdi32.lib。

  评论这张
 
阅读(943)| 评论(0)

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018