77范文网 - 专业文章范例文档资料分享平台

VC++6.0入门第五章 图形和文本输出(7)

来源:网络收集 时间:2018-12-29 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

第5章 图形与文本输出

程序清单5-21:修改输出界面的鼠标左键双击消息处理函数 void CEx5_2View::OnLButtonDblClk(UINT nFlags, CPoint point) { // TODO: Add your message handler code here and/or call default m_flag=1; this->Invalidate(true); CView::OnLButtonDblClk(nFlags, point); }

5. 同样操作在视图类增加鼠标右键双击的消息映射,修改m_flag的值为0,设置无效区域,刷新视图 6. 编译运行程序,在客户区反复双击鼠标的右键和左键,观察窗口的循环变化

实验3:(独立练习)

编写程序Ex5_3,实现如下功能:通过程序菜单项可以将不同颜色的画笔选入当前设备环境中;窗口中单击鼠标左键时,在点击处为圆心,用当前的画笔画一个圆。 操作要求:

1. 使用AppWizard创建一个单文档MFC(EXE程序),在MFC AppWizard-Step 4对话框中,取消对工

具栏、状态栏以及打印和打印预览的支持。

2. 为程序添加菜单项,按要求设置菜单项的属性:在程序主菜单中添加菜单“画笔”,为其增加三个子

菜单项“红画笔”、“绿画笔”和“蓝画笔”。 3. 用ClassWizard为菜单项添加处理函数,编写程序完成指定功能:依次为菜单项“红画笔”、“绿画笔”

和“蓝画笔”添加处理函数,在处理函数中完成以下功能:

(1) 选择菜单项“红画笔“后,将宽度为10个像素、颜色为红色、风格为实线(PS_SOLID)的画笔

选入设备环境

(2) 选择菜单项“绿画笔“后,将宽度为10个像素、颜色为绿色、风格为实线(PS_SOLID)的画笔

选入设备环境

(3) 选择菜单项“蓝画笔“后,将宽度为10个像素、颜色为蓝色、风格为实线(PS_SOLID)的画笔

选入设备环境

(4) 当选择“画笔”菜单中的某一菜单项后,在被选择的菜单项上置选中的标志。程序启动时,默

认菜单项为“红画笔“被选中。

4. 在视图类中编写程序代码,实现在窗口中绘图:在视图类中为单击鼠标左键的事件添加处理函数,

并编写代码用当前画笔,以单击处为中心,画一个半径为50个像素的圆。 5. 编译链接程序,生成可执行文件。

自测题 1.Windows操作系统通过 管理Windows程序的所有图形输出,包括 、 、 。

31

VC++6简明教程

2.应用程序可以使用GDI创建3种类型的图形输出: 、 和 。

3.CDC类封装了所有 ,包含了一个 的创建和初始化,及通用 对象的操作。

4. 是客户区设备上下文,用于客户区的输出,一般在 时要用到该类。 5.绘图前必须准备好设备上下文(DC),在一个MFC应用程序获得DC的常用方法有两种:一种是 ,另一种是 。

小结 1. Windows操作系统通过图形设备接口GDI,管理Windows程序的所有图形输出,包括显示在屏幕上

的窗口,屏幕保护程序的运行,文档的打印。GDI处理连接不同的输出设备,从而应用程序开发者不需要去考虑基础硬件设备之间的不同。

2. 用GDI可以创建3种类型的图形输出:矢量图形、光栅图形和文本。

3. CGdiObject是MFC提供绘图工具的类,它包括画笔(CPen)、画刷(CBrush)、字体(CFont)、位图

(CBitmap)、调色板(CPalette)、区域(CRgn)等。 4. 设备上下文(DC),是由GDI创建用来代表设备连接的数据结构。

5. CDC类封装了所有图形输出函数,包含了一个DC的创建和初始化,以及通用GDI对象的操作。 6. CClientDC是客户区设备上下文类,用于客户区的输出,一般在响应非窗口消息并对客户区绘图时

要用到该类。

7. 视图类包含成员函数OnDraw()函数,CDC指针被传递给OnDraw()函数。

8. WM_PAINT消息是最重要的绘图消息,它要求窗口重新绘制内容。MFC的窗口框架会将该消息映

射到CWnd::OnPaint()函数,OnPaint()函数创建一个DC,并调用视图的OnDraw()函数。 9. 绘图前必须准备好设备上下文(DC),在一个MFC应用程序获得DC的常用方法有两种:一种是接

受一个参数为指向CDC对象的指针,另一种是构造CClientDC对象。

10. 在窗口操作系统中采用32位来表示颜色,MFC和SDK采用COLORREF数据结构表示颜色。 11. 定义颜色的最简单的方法是使用RGB()宏,它采用三个参数,用0-255的值来表示红色、绿色、蓝

色。同样使用宏GetRValue(),GetGValue(),GetBValue()可以从一个COLORREF类型的变量是分离三元色。

12. 为了设置在绘制文本的前景像素时使用的颜色,调用CDC::SetTextColor(),函数定义如下:

COLORREF SetTextColor(COLORREF crColor);

13. 为了设置在绘制文本的背景像素时使用的颜色,调用CDC:SetBkColor(),函数定义如下:

COLORREF SetBkColor(COLORREF crColor);

14. CDC提供了设置文本显示属性的函数:SetBkMode()、GetBkMode()、SetTextAlign()和GetTextAlign()、

SetTextJusttification() 、SetTextCharaterExtra()。

15. 处理字体的最简单的方法是使用GDI的常备字体,如要自己设置显示字体的风格需要创建一个

CFont的对象,具体步骤如下: (1) 定义CFont对象

(2) 调用CreateFont()函数创建字体

(3) 将创建的字体对象选入DC,并保存前一个被选入DC的字体对象 16. CDC类提供了文本测量函数:GetTextExtent()和GetTextMetrics()。

17. CDC提供了以下几个函数用于文本输出:TextOut()、TabbedTextOut()、DrawText()和ExtTextOut()。 18. CDC提供了基本的绘图操作函数如画点,画线,画圆,画矩形,画多边形等等。

32

第5章 图形与文本输出

19. 库存对象是由操作系统维护的用于绘制屏幕的常用对象,包括库存画笔、画刷、字体等。使用

SelectStockObject()可以方便直接选择库存对象修改系统默认值。

20. 逻辑坐标按映像模式可分为三大类:MM_TEXT、固定比例的映射模式、可变比例的映射模式。 21. 设备坐标系统分为三类:工作区(Viewport)坐标系统、窗口(Windows)坐标系统和屏幕(Screen)

坐标系统。

22. 创建CPen的方法有两种:

(1) 定义时直接创建

(2) 定义CPen对象,再调用CreatePen()函数 23. 创建画刷的方法有:

(1) 创建实心画刷CreateSolidBrush()

(2) 创建带阴影的画刷CreateHatchBrush() (3) 创建位图画刷CreatePatternBrush()

33

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库VC++6.0入门第五章 图形和文本输出(7)在线全文阅读。

VC++6.0入门第五章 图形和文本输出(7).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/395611.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: