zoukankan      html  css  js  c++  java
  • MFC创建dc的总结

    Windows使用与设备无关的图形设备环境(DC :Device Context) 进行显示 。MFC基础类库定义了设备环境对象类----CDC类。
    CDC与CGdiObject的关系
    说道CDC类就不能不提一下GdiObject---图形对象类。 在Windows应用程序中,设备环境与图形对象共同工作,协同完成绘图显示工作。就像画家绘画一样,设备环境好比是画家的画布,图形对象好比是画家的画笔。用画笔在画布上绘画,不同的画笔将画出不同的画来。选择合适的图形对象和绘图对象,才能按照要求完成绘图任务。
    有关CDC类的继承
    父类:从 CObject 直接继承而来。继承了CObject类的各种特性,如动态创建等等。
    子类:CClientDC-------代表操作窗口的DC ,是比较常用的一个子类
    CMetaFileDC ------响应Meta File的DC ,Meta File是一些GDI消息。
    CPaintDC-------响应WM_PAINT消息的DC。
    CWindowDC ------代表整个屏幕的DC
    CDC类的数据成员
    数据成员只有两个:
    HDC m_hDC : CDC对象使用的输出设备上下文
    HDC m_hAttribDC : CDC对象使用的属性设备上下文
    二者在CDC对象创建时指向相同的设备上下文。

    1.CDC

            CDC *pDC=GetDC();
            pDC->MoveTo(m_point);
            pDC->LineTo(point);
            ReleaseDC(pDC);
    2.hdc
            HDC hdc;
            hdc=::GetDC(m_hWnd);
            MoveToEx(hdc,m_point.x,m_point.y,NULL);
            LineTo(hdc,point.x,point.y);
            ::ReleaseDC(m_hWnd,hdc);
            m_point=point;
     3.CWINDOWDC
            CWindowDC dc(this);
            CWindowDC dc(GetParent());
            dc.MoveTo(m_point);
            dc.LineTo(point);
            m_point=point;
    4.CClientDC 
            CClientDC dc(this);
            dc.MoveTo(m_point);
            dc.LineTo(point);
            m_point=point;
  • 相关阅读:
    dedecms5.7安装百度(ueditor)编辑器的方法
    shell多线程之进程间通信(2)
    shell多线程之进程间通信
    awk笔记
    用shell做简单的分布式计算
    C语言实现常用查找算法——二分查找
    C语言实现常用排序算法——基数排序
    C语言实现常用数据结构——堆
    C语言实现常用数据结构——图
    C语言实现常用数据结构——二叉查找树
  • 原文地址:https://www.cnblogs.com/yuqilihualuo/p/3502598.html
Copyright © 2011-2022 走看看