2-2Visual C++6.0 绘图基础
第二章
绘制像素函数 获取像素颜色函数 画笔函数 画刷函数 绘制直线函数 绘制矩形函数 绘制椭圆函数 绘制圆弧函数 绘制多边形函数 位图函数 文本函数
MFC上机操作步骤 基本绘图函数 CDC类结构和GDI对象 映射模式 CDC类的主要绘图成员函数 设备上下文的调用和释放 VC++绘制图形的几种方法
开发工具的选择
Turbo C
控制台程序,不支持鼠标和键盘操作。 只能显示16色,不能绘制光照和带阴影的图 形。
Turbo C 开发的 Sierpinksy海绵
Visual C++的MFC 可以显示1678万种真彩色,支持光 照模型的开发。 支持交互式绘图。
MFC 开发的 Sierpinksy海绵
例1 设计一个长方形CRect类,调用类的 CRect::CRect(int len,int wid)//定义带参构造函数 成员函数计算长方形的周长和面积。length=len; #include"iostream.h" width=wid; class CRect// 定义长方形类 cout<<" 建立对象"<<endl; { } public: CRect::~CRect()//定义析构函数 CRect(int,int);// void main()// 主函数 声明带参构造函数 { ~CRect();// 声明析构函数 { cout<<" 撤销对象"<<endl; double circum();//声明周长函数 CRect 定义对象和对象指针 } rect(30,20),*p=▭// double area();// 声明面积函数 //用对象输出周长和面积 double CRect::circum()// 定义周长函数 private: cout<<" 周长为:"<<rect.circum()<<endl;//输出周长 { int length;// 声明长方形的长度 cout<<" 面积为: "<<rect.area()<<endl;//输出面积 return 2*(length+width); int //用对象指针输出周长和面积 } width;//声明长方形的宽度 }; cout<<" 周长为: "<<p->circum()<<endl;// 输出周长 double CRect::area()// 定义面积函数 cout<<" 面积为:"<<p->area()<<endl;//输出面积 { } return length*width; } {
例3 从例2-1已有的长方形类CRect继承 出长方体类CCube,增加高度数据成员 height和计算体积成员函数volume()。
CRect::CRect(int len,int wid) //基类带参构造函数 { CCube::CCube(int len,int wid,int hei):CRect(len,wid) //派生类构造函数 length=len; #include"iostream.h" class CCube:public CRect//公有继承派生类 {width=wid; class CRect//基类 { cout<<" height=hei; 建立基类对象"<<endl; { Ccube派生类 public: cout<<" 建立派生类对象 "<<endl; } CRect 基类 public: CRect::~CRect()// 基类析构函数 CCube(int,int,int); } int length; { CRect(int,int); ~CCube(); CCube::~CCube()// 派生类析构函数 int width; ~CRect(); void main() cout<<" 撤销基类对象 "<<endl; int volume();// length; double 新增面积成员函数 { double circum(); double circum(); } int width; { private: double area(); cout<<"撤销派生类对象"<<endl; double CRect::area()// 基类面积函数 double area(); double circum(); CCube *p=new CCube(30,20,100); int height; //新增高度数据成员 } int height; double area(); { prote
cted: cout<<" 立方体的体积为: "<<p->volume()<<endl; }; double CCube::volume()//派生类体积函数 return length*width; int length; delete p; double volume(); } { int width; } return length*width*height; double CRect::circum()// 基类周长函数 }; { } return 2*(length+width); }
MFCMicrosoft Foundation Class Library
微软基类库MFC是以C++形式封装 的Windows API(Application Program Interface),包含了几百 个已经定义好的常用类。
继承图表
2.2MFC的上机操作步骤建立单文档应用程序框架,工程名为“Test”
单击“OK”按钮
单击“Finish”按 钮
ClassView面板
显示类和成员函数
ClassView面板可以看出:CMainFrame类,派生自CFrameWnd 类。包括主框架,包含 标题栏、菜单栏、工具栏和状态栏。 CTestApp类,派生自CWinApp,代表了应用程序的主线 程。基于框架生成的应用程序必须有且仅有一个从 CWinApp 派生的类的对象theApp,在创建窗口之前先构 造theApp 。 CTestDoc类,派生自CDocument类。文档类负责管理和 维护数据本身。 CTestView类,派生自 CView类。以某种形式表示文档 数据,所以称之为视图,用户操作的主要界面。 MFC中的数据是存储在CTestDoc类文档中,结果的显示是 在CTestView类中。
MFC类继承图表CObject CWinTread CWinApp CTestApp CView CTestView CFrameWind CMainFrame CDialog Controls CCmdTarget CWind CDC
CDocument CTestDoc
Resource View面板
显示资源
…… 此处隐藏:919字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [外语考试]管理学 第13章 沟通
- [外语考试]07、中高端客户销售流程--分类、筛选讲
- [外语考试]2015-2020年中国高筋饺子粉市场发展现
- [外语考试]“十三五”重点项目-汽车燃油表生产建
- [外语考试]雅培奶粉培乐系列适用年龄及特点
- [外语考试]九三学社入社申请人调查问卷
- [外语考试]等级薪酬体系职等职级表
- [外语考试]货物买卖合同纠纷起诉状(范本一)
- [外语考试]青海省实施消防法办法
- [外语考试]公交车语音自动报站系统的设计第3稿11
- [外语考试]logistic回归模型在ROC分析中的应用
- [外语考试]2017-2021年中国隔膜泵行业发展研究与
- [外语考试]神经内科下半年专科考试及答案
- [外语考试]园林景观设计规范标准
- [外语考试]2018八年级语文下册第一单元4合欢树习
- [外语考试]分布式发电及微网运行控制技术应用
- [外语考试]三人行历史学笔记:中世纪人文主义思想
- [外语考试]2010届高考复习5年高考3年联考精品历史
- [外语考试]挖掘机驾驶员安全生产责任书
- [外语考试]某211高校MBA硕士毕业论文开题报告(范
- 用三层交换机实现大中型企业VLAN方案
- 斯格配套系种猪饲养管理
- 涂层测厚仪厂家直销
- 研究生学校排行榜
- 鄱阳湖湿地景观格局变化及其驱动力分析
- 医学基础知识试题库
- 2010山西省高考历年语文试卷精选考试技
- 脉冲宽度法测量电容
- 谈高职院校ESP教师的角色调整问题
- 低压配电网电力线载波通信相关技术研究
- 余额宝和城市商业银行的转型研究
- 篮球行进间运球教案
- 气候突变的定义和检测方法
- 财经大学基坑开挖应急预案
- 高大支模架培训演示
- 一种改进的稳健自适应波束形成算法
- 2-3-鼎视通核心人员薪酬股权激励管理手
- 我国电阻焊设备和工艺的应用现状与发展
- MTK手机基本功能覆盖测试案例
- 七年级地理教学课件上册第四章第一节




