文档详情

面向对象实验报告_图文.docx

发布:2018-09-11约2.65万字共52页下载文档
文本预览下载声明
面向对象程序设计 Visual C++.NET 实验报告 数学与统计学院 姓名: 李荣萍 学号: 1302140204 班级: 信息与计算科学1402 指导教师: 朱世华 实验一:Cdc类编程实例之正弦函数图形显示 实验目的 熟悉.net的开发平台,掌握CDC类的使用:文本的输出,数字的显示输出,点线图的绘制,位图的显示输出。 实验内容 在视图窗口中画一个坐标系,并做出正弦图形 实验步骤 新建MFC项目,命名为正弦,应用程序类型选择单文档,点击完成。 打开解决方案资源管理器-源文件-正弦view.cpp,编辑ondraw()函数,首先去除参数pdc的注释:void C正弦View::OnDraw(CDC*pDC),然后添加如下代码: CRect rectClient; GetClientRect(rectClient); pDC-SetMapMode(MM_ANISOTROPIC); pDC-SetWindowExt(1000,1000); pDC-SetViewportExt(rectClient.right,- rectClient.bottom); pDC-SetViewportOrg(rectClient.right/2, rectClient.bottom/2); //绘制坐标轴 pDC-MoveTo(-500,0); pDC-LineTo(500,0); pDC-MoveTo(500,0); pDC-LineTo(490,10); pDC-MoveTo(500,0); pDC-LineTo(490,-10); pDC-MoveTo(0,-500); pDC-LineTo(0,500); pDC-MoveTo(500,0); pDC-LineTo(490,10); pDC-MoveTo(0, 500); pDC-LineTo(-10, 490); pDC-MoveTo(0, 500); pDC-LineTo(10, 490); pDC-MoveTo(0, 500); pDC-LineTo(-10, 490); //用循环标点 for(int i=-5;i=5;i++) { pDC-MoveTo(100*i,-5); pDC-LineTo(100*i,5); } //标记刻度 CString str; int i; for(i=-5;i=5;i++) { str.Format(_T(%d),i); pDC-TextOut(100*i,-5,str); } //正弦图像 //对采样点进行坐标计算和连续操作 pDC-MoveTo(-500,100*sin(-5.0)); for(i=-500;i=500;i++) { int y; y=100*sin((float)i/100); pDC-LineTo(i,y); } 在正弦view.cpp开始处添加#inculde“math.h” 运行结果 总结 一直到添加代码都很顺利,最后运行一直显示sin是未定义的标示符,才明白没有把#inculde“math.h”加进去 实验二:鼠标画线程序制作:将鼠标移动轨迹画出来 一、实验目的 掌握消息处理函数的使用,掌握画笔的使用。 二、实验内容 使用消息处理函数以及画笔通过鼠标的移动在屏幕上画轨迹。 三、实验步骤 1、新建MFC项目,命名为Mousemove,应用程序类型选择单文档,点击完成。 2、先在mouseView.h中添加成员变量 protected: COLORREF m_bColor; UINT m_penwidth; public: CPen *oldpen; bool m_flag; CPointm_pro; 3、在mouseView.cpp中的构造函数中进行初始化: CmouseView::CmouseView(): m_flag(false) { // TODO: 在此处添加构造代码 m_bColor=RGB(0,0,0); m_penwidth=1; } 4、在类视图中右击CmouseView,点击属性,在属性菜单中选择消息,添加OnLButtonDown、OnLButtonUp、OnMouseMove消息处理函数。 将三个消息处理函数代码修改如下: void CmouseView::OnLButtonDown(UINT nFlags, CPoint point) { // TODO: 在此添加消息处理程序代码和/或调用默认值 CDC *pDC=GetDC(); CPen mypen(P
显示全部
相似文档