一、画矩形框
在视图(view)类里面的重绘(ondraw)添加
win32版:
HDC dc = ::GetDC(this->m_hWnd);
::Rectangle(dc,0,0,100,100);
::ReleaseDC(this->m_hWnd,dc);
MFC版:
CDC *pDC = this->GetDC();
pDC->Rectangle(0,0,100,100);
this->ReleaseDC(pDC);
封装版
CClientDC dc(this);
dc.Rectangle(0,0,100,100);
类CClientDC派生于CDC,在构造时调用了Windows函数GetDC,在析构时调用了ReleaseDC。这意味着和CClientDC对象相关的设备上下文是窗口的客户区。
二、画直线
在view里面添加鼠标左键按下和抬起的消息
在头文件里面定义鼠标按下的点:
public:
CPoint PointMouseDown;
在鼠标按下消息里面给按下的点赋值:
PointMouseDown = point;
在鼠标抬起消息里面画线:
CDC *pDC = this->GetDC();
pDC->MoveTo(PointMouseDown);
pDC->LineTo(point);
this->ReleaseDC(pDC);
or
&n

本文详细介绍了如何在MFC应用中进行绘图操作,包括绘制矩形框、直线、连续线条以及在窗口上贴图的方法。通过Win32 API和MFC类库的不同实现方式,讲解了绘图的基本步骤和关键函数,例如Rectangle、MoveTo、LineTo、BitBlt等,帮助开发者重温并深入理解MFC绘图技术。
最低0.47元/天 解锁文章
878

被折叠的 条评论
为什么被折叠?



