小职
2018-07-05
来源 :
阅读 1878
评论 0
摘要:本文主要向大家介绍了VC++编程技术之绘制图形的几种方法,通过具体的内容向大家展示,希望对大家学习VC++编程技术有所帮助。
本文主要向大家介绍了VC++编程技术之绘制图形的几种方法,通过具体的内容向大家展示,希望对大家学习VC++编程技术有所帮助。
第一种方法:使用OnDraw 成员函数
void CTestView::OnDraw(CDC* pDC)
{
CTestDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
pDC->MoveTo(20,30);
pDC->LineTo(200,300);
}
第二种方法:使用CDC *pDC 的菜单调用方式
⑴在MFC框架中的【FileView】面板中,双击【TestView.cpp】,在该文件最后添加成员函数DrawmyLine()的定义:
void CTestView::DrawmyLine( )
{
CDC *pDC=GetDC();
pDC->MoveTo(20,30);
pDC->LineTo(200,300);
ReleaseDC(pDC);
}
⑵在【FileView】面板中,双击【TestView.h】,在该文件中的“public:”下面加入成员函数声明:void DrawmyLine();
⑶在菜单中添加菜单函数OnMENU DrawmyLine( )调用DrawmyLine()成员函数。
void CTestView::OnMENU DrawmyLine( )
{
// TODO: Add your command handler code here
DrawmyLine( );
}
本方法需要在头文件TestView.h中声明成员函数DrawmyLine(),在源程序TestView.cpp中定义成员函数DrawmyLine()。在DrawmyLine()函数中使用了CDC类指针对象,需要调用和释放设备上下文 。
第三种方法:使用CClientDC dc(this) 的菜单调用方式
成员函数DrawmyLine()的声明和菜单的调用同第二种方法的⑵和⑶,在TestView.cpp文件中修改DrawmyLine()成员函数的定义:
void CTestView:: DrawmyLine( )
{
CClientDC dc(this );
dc.MoveTo(20,30);
dc.LineTo(200,300);
}
本方法也需要在头文件TestView.h中声明成员函数DrawmyLine(),在源程序TestView.cpp中定义成员函数DrawmyLine()。不同点只是使用显示器客户区设备上下文类定义了客户区对象dc,并使用客户区的this指针对dc对象进行初始化,使dc对象指向显示器的客户区,这种方法不需要调用和释放设备上下文。
本文由职坐标整理并发布,了解更多内容,请关注职坐标编程语言VC/MFC频道!
喜欢 | 1
不喜欢 | 0
您输入的评论内容中包含违禁敏感词
我知道了

请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号