第12章图形设备接口和资源new

第12章图形设备接口和资源new

ID:34478994

大小:641.57 KB

页数:34页

时间:2019-03-06

第12章图形设备接口和资源new_第1页
第12章图形设备接口和资源new_第2页
第12章图形设备接口和资源new_第3页
第12章图形设备接口和资源new_第4页
第12章图形设备接口和资源new_第5页
资源描述:

《第12章图形设备接口和资源new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、VisualC++与面向对象程序设计教程第12章图形设备接口和资源地空学院地信系中国地质大学教学目标Windows的图形设备接口MFC的设备环境类和图形对象资源的概念和编程方法学习要求了解图形设备接口和资源的基本概念掌握掌握画笔、画刷、位图以及菜单等对象和资源的用途和编程方法学会简单的动画编程和DeveloperStudio的各种资源编辑器的使用方法授课内容12.1设备环境类和图形对象12.2Windows应用程序资源12.3库存图形对象12.4画笔与画刷12.5位图12.6菜单调试技术程序设计举例12.1设备环境类和图

2、形对象应用程序设备环境MFC设备环境类图形设备接口图形设备接口(GDI)设备驱动程序物理设备硬件MFC应用程序在硬件上绘图的抽象层次设备环境在Windows程序中,应用程序的输出并不直接面向物理的设备,如显示屏或打印机,而是针对一个称之为设备环境(DeviceContext)的逻辑设备进行操作,设备环境与实际设备之间的信息传送由Windows直接管理。设备环境类CDC类CPaintDCCClientDCCWindowDCCMetaFileDC图形对象类CGdiObject类CPenCBrushCfontCbitmapCp

3、aletteCRgn12.2Windows应用程序资源资源:是一种数据,它包含了决定程序的用户界面的文本和图形。资源所决定的界面元素有:菜单加速键位图、光标、图标对话框、控件字符串工具栏资源脚本文件和资源头文件资源文件.rc定义资源内容资源通过资源标识符加以区别资源头文件Resource.h定义一个项目中所有的资源标识符12.3库存图形对象CGdiObjectClassMembersCGdiObject::CreateStockObjectBOOLCreateStockObject(intnIndex);Retur

4、nValueNonzeroifthefunctionissuccessful;otherwise0.掌握SelectStockObject()方法选择相应某个预定义的库存钢笔、画笔或字体的一CGdiObject对象不必存储和恢复原来的图形对象例12-1用鼠标切换椭圆的图形参数修改文档类的定义(头文件),加入二个变量定义:classCMyDoc:publicCDocument{protected://createfromserializationonlyCMyDoc();DECLARE_DYNCREATE(CMyDoc)//Attributes

5、public:intm_nColor;CRectm_rectEllipse;//Operationspublic:…(以下省略文档类的其它定义语句)}例12-1用鼠标切换椭圆的图形参数(续1)修改文档类的OnNewDocument函数,对变量进行初始化:BOOLCMyDoc::OnNewDocument(){if(!CDocument::OnNewDocument())returnFALSE;//TODO:addreinitializationcodehere//(SDIdocumentswillreusethisdocument)m_rectEl

6、lipse=CRect(100,100,300,250);m_nColor=0;returnTRUE;}例12-1用鼠标切换椭圆的图形参数(续2)修改视图类的OnDraw函数,加入显示椭圆代码:voidCMyView::OnDraw(CDC*pDC){CMyDoc*pDoc=GetDocument();ASSERT_VALID(pDoc);//TODO:adddrawcodefornativedatahereswitch(pDoc->m_nColor)//根据颜色变量值决定用不同的画刷{case0:pDC->SelectStockObject(GR

7、AY_BRUSH);break;case1:pDC->SelectStockObject(LTGRAY_BRUSH);break;case2:pDC->SelectStockObject(BLACK_BRUSH);break;}pDC->Ellipse(pDoc->m_rectEllipse);//画椭圆}例12-1用鼠标切换椭圆的图形参数(续3)用ClassWizard建立鼠标左键的消息处理函数,并加入代码voidCMyView::OnLButtonDown(UINTnFlags,CPointpoint){//TODO:Addyourmessag

8、ehandlercodehereand/orcalldefaultCMyDoc*pDoc=GetDocument();AS

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。