MFC绘图1--使用不同DC

来源:互联网 发布:mac新建文件夹在哪里 编辑:程序博客网 时间:2024/05/10 16:59

//使用HDC绘图
/*
HDC hdc;
hdc=::GetDC(m_hWnd);
MoveToEx(hdc,m_ptOrigin.x,m_ptOrigin.y,NULL);
LineTo(hdc,point.x,point.y);
::ReleaseDC(m_hWnd,hdc);
*/

//所有跟窗口相关的操作都被封装在CWnd类中
//所有跟绘图相关的操作都被封装在CDC类中

//使用CDC绘图
/*
CDC *pDC=CWnd::GetDC();
//此处直接使用CWnd类的GetDC,其返回值为CDC*
//SDK中的同名函数使用返回的是HDC
pDC->MoveTo(m_ptOrigin);
pDC->LineTo(point);
CWnd::ReleaseDC(pDC);
*/

//使用CClientDC绘图
/*
CClientDC派生自CDC,在构造的时候调用GetDC,
在析构的时候调用ReleaseDC。使得我们不必
显示调用GetDC与ReleaseDC。
*/
/*
CClientDC dc(this);
dc.MoveTo(m_ptOrigin);
dc.LineTo(point);
*/

//使用CWindowDC绘图
/*
同样派生自CDC,构造调用GetWindowDC,
析构时调用ReleaseDC()。
可以访问整个屏幕区域,包括客户区和非
客户区。
*/
/*
CWindowDC dc(this);
dc.MoveTo(m_ptOrigin);
dc.LineTo(point);
*/

//通过GetDesktopWindow获得桌面DC
/*
注意:用平台SDK同名函数获得的是句柄,CWnd中
的同名函数获得的是CWnd指针。可以通过该函数获得
桌面窗口的CWnd指针,使得我们可以对桌面进行操作。
*/
/*
CWindowDC dc(GetDesktopWindow());
dc.MoveTo(m_ptOrigin);
dc.LineTo(point);
*/

原创粉丝点击