- 0
- 0
- 约7.44千字
- 约 36页
- 2017-02-08 发布于江苏
- 举报
教学目标 Windows的图形设备接口 MFC的设备环境类和图形对象 授课内容 3.1 设备环境类和图形对象 3.2 库存图形对象 3.3 画笔与画刷 3.4 字体 3.5 绘图模式 3.6 GDI坐标系 3.7 WINDOWS应用程序资源 3.8 位图 3.9 菜单 3.10 图标、快捷键和字符串表 3.11工具条与状态条 3.12更新命令用户接口消息 3.1 设备环境类和图形对象 设备环境 图形设备接口 设备环境 在Windows程序中,应用程序的输出并不直接面向物理的设备,如显示屏或打印机,而是针对一个称之为设备环境(Device Context)的逻辑设备进行操作,设备环境与实际设备之间的信息传送由Windows直接管理。 设备环境类 CDC类 CPaintDC CClientDC CWindowDC CMetaFileDC 图形对象类 CGdiObject类 CPen CBrush CFont CBitmap CPalette CRgn 3.2 库存图形对象 virtual CGdiObject* SelectStockObject( int nIndex ); nIndex指定要创建的图形对象 图形对象 说 明 BLACK_PEN 黑笔 NULL_PEN 空笔,不画线或边框 WHITE_PEN 白笔 BLACK_BRUSH 黑色刷子 WHITE_BRUSH 白色刷子 DKGRAY_BRUSH 暗灰刷子 GRAY_BRUSH 灰色刷子 LTGRAY_BRUSH 淡灰色刷子 NULL_BRUSH 空刷子,内部不填充 ANSI_FIXED_FONT Windows固定倾角(单间隔)系统字体 ANSI_VAR_FONT Windows可变倾角(比例间隔)系统字体 DEFAULT_GUI_FONT 缺省GUI字体(如菜单和对话框字体) SYSTEM_FONT 系统字体 不必存储和恢复原来的图形对象 【例】 用鼠标切换椭圆的图形参数 修改文档类的定义(头文件),加入二个变量定义: class CMyDoc : public CDocument { protected: // create from serialization only CMyDoc(); DECLARE_DYNCREATE(CMyDoc) // Attributes public: int m_nColor; CRect m_rectEllipse; // Operations public: …(以下省略文档类的其它定义语句) } 【例】 用鼠标切换椭圆的图形参数(续1) 修改文档类的OnNewDocument函数,对变量进行初始化: BOOL CMyDoc::OnNewDocument() { if (!CDocument::OnNewDocument()) return FALSE; // TODO: add reinitialization code here // (SDI documents will reuse this document) m_rectEllipse = CRect(100,100,300,250); m_nColor = 0; return TRUE; } 【例】 用鼠标切换椭圆的图形参数(续2) 修改视图类的OnDraw函数,加入显示椭圆代码: void CMyView::OnDraw(CDC* pDC) { CMyDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); // TODO: add draw code for native data here switch(pDoc-m_nColor) //根据颜色变量值决定用不同的画刷 {case 0: pDC-SelectStockObject(GRAY_BRUSH);break; case 1: pDC-SelectStockObject(LTGRAY_BRUSH);break; case 2: pDC-SelectStockObject(BLACK_BRUSH);break; } pDC-Ellipse(pDoc-m_rectEllipse); //画椭圆 } 【例】 用鼠标切换椭圆的图形参数(续3) 用ClassWizard建立鼠标左键的消息处理函数,并加入代码 void CMyView::OnLButtonDown(UINT nFlags, CPoint point) { // TODO: Add your message h
您可能关注的文档
- 大型数据库中的关联规则挖掘培训教案.ppt
- 大孔雀蛾的晚会()培训教案.ppt
- 大堡礁培训教案.ppt
- 大地控制网的建立&地球重力场培训教案.ppt
- 大学 英语b网考辅导培训教案.ppt
- 大学 AUTO ACD 完整 AUTOCAD入门培训教案.ppt
- 大孔雀蛾的晚会培训教案.ppt
- 大学 计算机网络 完整 无线通信培训教案.ppt
- 大学IT培训教案.ppt
- 大学 AUTO ACD 完整 绘图命令及绘图方法培训教案.ppt
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
原创力文档

文档评论(0)