绘图类

来源:互联网 发布:花生壳 顶级域名 编辑:程序博客网 时间:2024/05/21 08:04

 MFC绘图类主要有:CDC、CPaintDC、CClientDC和CWindowDC等,其中CDC是基础,其他的几个类是由CDC派生出来的。

先来介绍下这几个类:(1)CDC类:他是CObject类的一个派生类,他是所有绘图类的基类。(2)CPaintDC类:他是CDC类的一个派生类,用于模拟响应windows消息WM_PAINT的设备环境,在这个类中可以使用CDC的所有函数。CPaintDC一般用在Onpaint函数内,以响应WM_PAINT消息。WM_PAINT是当窗口的某个区域需要重画时激发的窗口消息。(3)CClientDC类:他也是CDC的一个派生类,他为非响应windows消息WM_PAINT的成员函数提供一个设备环境。(4)CWindowDC类:他也是CDC的一个派生类,提供一个设备环境,以便成员函数在包括非客户区在内的整个屏幕区域内绘图。

以上这些绘图类的区别:(1)CWindowDC与 CClientDC、 CPaintDC类的区别:用CPaintDC和CClientDC类的对象绘图时,绘制区只能是客户区,而不能在非客户区。而CWindowDC可以在非客户区里绘图。CWindowDC类一般在框架类(CMainFrame类)中使用,(2)CPaintDC和CClientDC的区别:CPaintDC类对象应用在Onpaint函数中,以响应WM_PAINT消息,而CClientDC类对象应用在非响应消息WM_PAINT情况下。

原创粉丝点击