mfc封装设备上下文类(CDC),及其派生类CPaintDC,CClientDc,CWindowDC,CMetaFileDC
客户区绘制:CPaintDC(OnPaint()处理程序使用),CClientDC(除OnPaint外的其他处理程序)
窗口内任意区域绘制:CWindowDC
GDI元文件绘制:CMetaFileDC
设备上下文mfc类(CDC),封装了所有绘图方法,支持各种类型的设备绘制
:该类有两个上下文句柄:m_hDC:输出句柄,m_hAttribDC:属性调用句柄
设备上下文(DC)是一种windows数据结构,包含某个设备的绘制属性,一般来说,绘制调用都是使用设备上下文对象(设备上下文(操作类)类对象)
设备上下文类型:
1.显示设备上下文
2.打印机设备上下文
3.内存设备上下文
4.信息设备上下文
图形对象(GDI对象):
windows提供一些预定义的GDI对象(库存对象),例如:BLACK_BRUSH(黑色画刷),DKGRAY_BRUSH(灰色画刷)等,使用调用CreateStockObject(),只是取库存对象的句柄,没有创建。
图形对象的选择和删除:
1.创建图形对象
2.调用selectObject替换原对象对象
3.进行相关绘制工作
4.绘制结束恢复默认图像对象(selectObject),且释放创建的图形对象deleteObject()
(注意:选择调色板时,使用selectPalette(),非SelectObject())
设备上下文的保存和恢复:
通常用来保存绘制属性(设备上下文的属性),便于再次使用;
SaveDC()进行属性保存·,RestoreDC()进行属性恢复
可以保存任意次数属性,相应的属性使用时按照先存后取进行调用
windows的映射模式:
对于所有映射模式,Windows都用下面两个公式将窗口坐标转换成视口坐标:
xViewport = (xWindow - xWinOrg) * (xViewE