文档详情

C实习报告--学生学籍成绩管理系统画线.doc

发布:2018-04-27约2.17万字共53页下载文档
文本预览下载声明
实习题目一 一、【需求规格说明】GetColor()函数,调用系统的调色板,将获得的信息传到程序中,改变画线的颜色;通过改变宽度函数的变量,来改变画线的宽度。  ⑵ 首先获取鼠标的坐标,通过计算,在右击鼠标后,在鼠标有限的距离之内的画线有效,然后选定,然后再调用相应的函数来改变选定直线的属性。  ⑶ 用CFile 定义一个对象,通过对象调用Open()函数来打开保存的文件。文件的保存是先用Open()函数,然后再保存要保存的数据。 二、【算法设计】 ⑴、基本思想 在视图中画好线后,存在文档里面,再从文档存到磁盘,打开文件时,从磁盘到文档,由OnDraw()函数调用重绘函数进行重绘。 ⑵程序设计: ////////////////////////////////////////////////////////// // DrawView.h : interface of the CDrawView class #if !defined(AFX_DRAWVIEW_H__D9CAA283_2CAD_4A04_86EE_42FBE886F459__INCLUDED_) #define AFX_DRAWVIEW_H__D9CAA283_2CAD_4A04_86EE_42FBE886F459__INCLUDED_ #if _MSC_VER 1000 #pragma once #endif // _MSC_VER 1000 class CDrawView : public CView { public: void ChangeLine(CPoint point); public: BOOL m_bIsLine; //记录是否处于画线状态 CPoint point0; //记录线段起点坐标 int m_nStep; //记录画线的操作步数 CPoint point1; //记录线段终点坐标 COLORREF m_nLineColor; //线条颜色 int m_nLineWidth; //线条宽度 int i; //循环控制变量 BOOL ClickSaveButton; //点击自己的保存时给它赋值为假 int drawmodel; //划线模式 0:D-U-D 1:D-D CString filename; //用于存取已绘制的图像的文件名 BOOL m_nChange; //选中线,改变属性 BOOL m_nChangeReDraw; //选中进行重绘 /////////////////////////////////////// protected: // create from serialization only CDrawView(); DECLARE_DYNCREATE(CDrawView) // Attributes public: CDrawDoc* GetDocument(); // Operations public: // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CDrawView) public: virtual void OnDraw(CDC* pDC); // overridden to draw this view virtual BOOL PreCreateWindow(CREATESTRUCT cs); protected: virtual BOOL OnPreparePrinting(CPrintInfo* pInfo); virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo); virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo); //}}AFX_VIRTUAL // Implementation public: virtual ~CDrawView(); #ifdef _DEBUG virtual void AssertValid() const; virtual void Dump(CDumpContext dc) const; #endif protected: // Generated message map functions protected: //{{
显示全部
相似文档