- 2
- 0
- 约1.56万字
- 约 51页
- 2018-02-15 发布于江西
- 举报
第十章 图形与多媒体
10.1 媒体程序介绍 1. 时钟仿真程序 图10-1是MyClock程序的运行结果,是一个时钟仿真程序。 10.1 媒体程序介绍(续) 2. 媒体播放器 图10-2所示是一个正在播放媒体的播放器,可以播放波形音频(WAVE)、MIDI音频和视频(AVI)三种媒体,其中进程条显示播放的进度。 10.1 媒体程序介绍(续) 首先介绍有关GDI+绘图基础:Graphics类、Pen类、Brush类、Font类和Bitmao类,然后用自定义类作为基类,完成时钟程序的仿真开发。 10.2 GDI+绘图基础 DGI+的功能包含在System、System.Drawing、System.Drawing.Image、System.Drawing.Draw2D和System.Drawing.Text等名称空间的各个类中。 10.2.1 Graphics类 Graphics类封装一个GDI+绘图图面。Graphics对象表示GDI+的绘图表面,是用来创建图形图像的对象。绘制图形包括两个步骤: (1)创建Graphics对象; (2)使用Graphics对象绘制线条和形状、呈现文本或显示与操作图像。 10.2.2 画笔Pen类 用Pen类创建画笔对象。画笔通常具有宽度、样式和颜色三种属性。 例如: (1)创建一个默认宽度为1的黑笔 Pen myPen = new Pen(Color.Black); (2)创建一个宽度为6的黑笔 Pen myPen = new Pen(Color.Black,6); 【例10-1】 用Pen类画一条直线 (1) 创建Windows窗体应用程序项目MyDraw,修改默认窗体的Text属性值为“绘图”,Name属性采用默认值。 (2) 在Form1窗体中,添加button控件,将其Text属性修改为“画直线”。 (3) 为“画直线”按钮的Click事件添加处理代码。 10.2.3 画刷Brush类 GDI+提供了几种画刷类来填充内部区域 : ? SolidBrush类:单色画刷,在命名空间System.Drawing中定义,其构造函数只有一个,定义如下: SolidBrush brush1 = new SolidBrush(Color color); 可使用属性Color来修改画刷颜色,例如:brush1.Color = Color.Green; ? TextureBrush类:纹理(图像)画刷使用图像填充封闭曲线的内部。 ? HatchBrush类:阴影画刷是用指定样式、填充线条颜色和背景颜色的画刷。 ? LinearGradientBrush类:颜色渐变画刷。 【例10-3】 画一个添充矩形。 类似例10-2,打开MyDraw项目,在窗体中添加“添充矩形”Button控件,并为该按钮添加Click事件处理方法,编写填充矩形代码。 10.2.4 字体Font类 【例10-4】在MyDraw项目中,使用Graphics类中的DrawString方法绘制文本。 10.2.5 位图Bitmap类 1. 图像的显示 1. 图像的显示(续) 10.3 时钟程序的开发 10.3.1 创建时钟程序项目 10.3.2 声明时针基类Hand 时针(HourHand)、分针(MinuteHand)和秒针(SecondHand)包含相似的属性和方法,在名字空间MyClock中构建一个针(Hand)类作为它们的共同基类,提供共有的成员 10.3.3 声明Hand的派生类: 秒针、分针和时针类 1. 分针类(MinuteHand ) 在名字空间MyClock中,以Hand为基类,派生出MinuteHand类 10.3.3 声明Hand的派生类: 秒针、分针和时针类 2. 秒针类(SecondHand ) 10.3.3 声明Hand的派生类: 秒针、分针和时针类 3. 时针类(HourHand ) 在名字空间MyClock中,以Hand为基类,派生出HourHand类 10.3.4 声明时钟表面 时钟表面用ClockFace类来实现。画一个圆代表时钟,画上米老鼠的图案,最后在相应的位置画上数字1-12。在名字空间MyClock中新建ClockFace类: 10.3.5 时钟初始化 在窗体Form1类中定义时针(HourHand)、分针(MinuteHand)和秒针(SecondHand)类对象,并在其构造函数中实例化 10.3.6 时钟启动 (1) 为Timer1控件的Tick事件,添加事件处理方法,在Tick事件方法中,计算当前时钟的仿真代码,然后调用Invalidate()方法激活Paint事件 1
您可能关注的文档
- 第十三讲 Trunk and VTP.ppt
- 第十三讲:知与仁.ppt
- 第十三讲 国际经济竞争与相互依存.ppt
- 第十三讲:网站建设及动态网站后台管理技术.ppt
- 第十三课 全面内战的爆发.ppt
- 第十三讲 城市总体规划2.ppt
- 第十三课 初识机器人.ppt
- 第十九章 机械技术基础-田鸣.ppt
- 第十九章 财务管理决策与评价.ppt
- 第十九章 税务纠纷的解决.ppt
- 新启航英语二年级上册Unit5 Festival Period 2 课件.ppt
- 10.相亲相爱一家人 情境化教学课件-统编版2026道德与法治一年级下册.ppt
- 7星星点点 AI赋能课件 2026人美版美术一年级下册.ppt
- 3.2 世界的气候类型(教学课件) 2025中图版地理八年级上册.ppt
- 5.1 发达国家与发展中国家的差异(教学课件) 2025中图版地理八年级上册.ppt
- 13.快乐的儿童节 情境化教学课件-统编版2026道德与法治一年级下册.ppt
- 新启航英语二年级上册Unit5 Festival Period 1 课件.ppt
- 2025冀教版数学三年级上册全册教学课件.ppt
- 地理试卷云南名校联盟2026届高三上学期第三次联考(12.25-12.26).docx
- 2025~2026学年第一学期 高一年级英语试卷.docx
原创力文档

文档评论(0)