话说我在读代码时到遇到CDC定义的东西时就看不懂`什么呀.请各路好汉予以指导,让鄙人水平升级.(它的用法和作用)

解决方案 »

  1.   

    简单的说 对HDC的封装
    lz还是先把GDI方面的东西看看再研究CDC
      

  2.   

    CDC就是抽象的设备,一般是显示设备,显卡啦屏幕啦等等,抽象了以后你就不需要管具体是什么设备了,所有设备都一样的用法.
    或者简单来说,就是:你要画图,就先得有张画布,或者纸张等等,在程序里面具体的显卡屏幕就对应画布或者纸张,但是你画画的时候不需要管具体颜料是怎么附着在画布或者纸上的。用CDC也一样,你只要告诉操作系统,你就要在它当前的显示设备上画图啦,然后调用GetDC()获得当前设备句柄,就相当于拿到了画布或纸张,你就只管往上画就是了,把颜料附着在画布上的工作是已经封装好的,MFC帮你做好了。最简单的,画一条直线:
    CDC *dc = GetDC();//拿到操作系统正在画图的纸
    dc->MoveTo(0,0);//把笔尖放在(0,0)的位置
    dc->LineTo(100,100);//画一条线到(100,100)的位置,至于怎么画你就不用管了
    ReleaseDC(dc);//把纸还给操作系统,它可以画别的东西GDI是图形设备接口,基本的图形图像处理操作这里都有,GDI+是对它的一个封装,容易用些
    具体的用法看MSDN吧