如何用MFC划线(两种方法)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如何用MFC划线
——两种方法
首先,新建一个MFC应用程序,选择单文档文件。
方法一:用到hDC
1.添加一个成员变量.
类型:CPoint。
变量名:m_ptOringin。
访问:Private。
在C...View中点击右键→添加变量→类型→变量名→访问→完成。
添加代码:
1.找到C...View中View.cpp文件
CDrawView::CDrawView()
{
// TODO: 在此处添加构造代码
m_ptOrigin=0;
}
2.添加一个OnLButtonDown消息响应。
在C...View中点击右键→属性→消息→添加OnLButtonDown。
代码如下:
void CDrawView::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
m_ptOrigin=point;
CView::OnLButtonDown(nFlags, point);
}
3.添加一个OnLButtonUp消息响应。
在C...View中点击右键→属性→消息→添加OnLButtonUp。
代码如下:
void CDrawView::OnLButtonUp(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
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);
CView::OnLButtonUp(nFlags, point);
}
4.运行就行了。
方法二(用CDC划线):1、2、3步骤均与方法一相同,只是第3步代码不一样。
1、2步省略。
3:添加一个OnLButtonUp消息响应。
在C...View中点击右键→属性→消息→添加OnLButtonUp。
代码如下:
void CDrawView::OnLButtonUp(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
CDC *pDC=GetDC();
pDC->MoveTo(m_ptOrigin);
pDC->LineTo(point);
ReleaseDC(pDC);
CView::OnLButtonUp(nFlags, point);
}
4.这样同样可以运行,你可以试试。