- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
炀VC实验三任务三湖北理工
实 验 报 告学生姓名: 炀实验项目: 绘制正弦与余弦曲线的应用程序实验时间: 2016.9.27实验地点:K4-407指导老师:刘军实验目的及要求 编写一个能用不同的颜色及线宽绘制正弦与余弦曲线的应用程序。程序运行后,首先在视图窗口中显示坐标轴,然后根据用户所选择的曲线类型,颜色及线宽绘制曲线,并在状态栏中显示相关的提示信息。 实验内容 1.创建MFC应用程序框架启动Visual C++使用MFC AppWizard[exe]生成一个单文档应用程序Curve 2添加菜单项 选择项目工作区的Resources View视图,展开Menu文件夹,双击菜单资源IDR_MAINFRAME,打开菜单编辑器。在主菜单“帮助”的后面添加3个主菜单“曲线”,“线宽”,“颜色”,分别给它们添加菜单项。3.创建快捷菜单 4.创建工具栏 5.添加代码(1) 添加成员变量及成员函数 选择项目工作区中的ClassView视图,点击CcurveView,在弹出的快捷菜单中分别选择Add Member Variable 和 Add Member Function 添加成员变量及成员函数成员变量: int m_able; 标志菜单是否有效1为有效,0为无效int m_typ; 记录曲线类型,1为正弦,2为余弦int m_wid; 记录曲线线宽,可以取1,2,3COLORREF m_col; 记录曲线颜色成员函数:void drawaxis(CDC* pDC);void drawline(CDC* pDC,int x1,int y1,int x2,int y2);void drawcurve(CDC *pDC);double calcos(int x);double calsin(int x); 在构造函数中初始化成员变量CCurveView::CCurveView(){ // TODO: add construction code here m_typ = 0; m_col = RGB(0,0,0); m_wid = 1; m_able = 0;}(2)添加成员函数代码 1.打开CurveView.h文件,在类定义的前面添加代码: Const double PI = 3.1416; 2.打开CurrveView.cpp文件中,添加如下代码 #include math.h#include “MainFrm.h” 3.为各成员函数添加代码: double CCurveView::calsin(int x){ double y; y = sin(x*PI/180); return y;}double CCurveView::calcos(int x){double y;y = cos(x*PI/180);return y;}void CCurveView::drawcurve(CDC *pDC){drawaxis(pDC);CPoint point[750];CPen mypen,*OldPen;mypen.CreatePen(PS_SOLID,m_wid,m_col);OldPen = pDC-SelectObject(mypen);for(int i =0; i 722 ; i++){point[i].x = i + 50;if( 1 == m_typ){point[i].y =(int)(150 - calsin(i)*100);}else if( 2 == m_typ){point[i].y = (int)(150 - calcos(i)*100);}}for(i = 0 ; i 721 ; i++){drawline(pDC,point[i].x,point[i].y,point[i+1].x,point[i+1].y);}pDC-SelectObject(OldPen);mypen.DeleteObject();}void CCurveView::drawline(CDC *pDC, int x1, int y1, int x2, int y2){pDC-MoveTo(x1,y1);pDC-LineTo(x2,y2);}void CCurveView::drawaxis(CDC *pDC){CString str;CFont myfont,*OldFont;myfont.CreatePointFont(80,Arial,pDC);OldFont = pDC-SelectObject(myfont);drawline(pDC,50,10,50,290);drawline(pDC,45,150,780,150);for(int i = 50 ; i 780; i =
文档评论(0)