《Delphi程序设计及实验指导》电子教案--第11章.ppt
《《Delphi程序设计及实验指导》电子教案--第11章.ppt》由会员分享,可在线阅读,更多相关《《Delphi程序设计及实验指导》电子教案--第11章.ppt(31页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第十一章第十一章 多媒体编程多媒体编程 11.1 动画组件TAnimate11.2 简单的动画播放程序的设计11.3 简单的CD播放器的制作习 题11.1 动画组件TAnimate1用途 DelphiDelphi提供了一个提供了一个TMediaPlayerTMediaPlayer组件,使得程序员可组件,使得程序员可以使用它快速开发音频或者视频播放器。以使用它快速开发音频或者视频播放器。TMediaPlayerTMediaPlayer组件提供了一个组件提供了一个MCIMCI(Media Control Media Control InterfaceInterface,媒体控制界面),它可以轻松地
2、在程序中,媒体控制界面),它可以轻松地在程序中加入多媒体功能。完整的加入多媒体功能。完整的MCIMCI驱动程序能够支持驱动程序能够支持*.wav.wav、*.datdat、*.midi.midi和和*.cdacda等格式的文件。等格式的文件。11.1 动画组件TAnimate2主要属性(1)Active(1)Active属性属性(2)Center(2)Center属性属性(3)(3)FileNameFileName属性属性 (4)(4)FrameCountFrameCount属性属性 (5)(5)FrameHeightFrameHeight和和 FrameWidthFrameWidth属性属性
3、 (6)Open(6)Open属性属性 (7)Repetitions(7)Repetitions属性属性 (8)(8)StartFrameStartFrame属性和属性和StopFrameStopFrame属性属性 (9)Timers(9)Timers属性属性 11.1 动画组件TAnimate注意:注意:在使用在使用PlayPlay方法时应用注意以下几点:方法时应用注意以下几点:FromFrameFromFrame的值应该小于或等于的值应该小于或等于ToFrameToFrame的值。的值。CountCount参数值为参数值为0 0的时候代表持续播放,直到使用的时候代表持续播放,直到使用Sto
4、pStop方法时停止。方法时停止。StartFrameStartFrame和和StopFrameStopFrame的值将在使用的值将在使用PlayPlay方法时被方法时被FromFrameFromFrame和和ToFrameToFrame的值覆盖。的值覆盖。11.1 动画组件TAnimate【例例11-111-1】使用使用TanimateTanimate组件设计一个简单的动组件设计一个简单的动画播放程序。画播放程序。11.1 动画组件TAnimate11.1.2 11.1.2 媒体播放器组件媒体播放器组件TMediaPlayerTMediaPlayer 1 1用途用途 DelphiDelphi
5、提提供供了了一一个个TMediaPlayerTMediaPlayer组组件件,使使得得程程序序员员可可以以使使用用它它快快速速开开发发音音频频或或者者视视频频播播放放器器。TMediaPlayerTMediaPlayer组组件件提提供供了了一一个个MCIMCI(Media Media Control Control InterfaceInterface,媒媒体体控控制制界界面面),它它可可以以轻轻松松地地在在程程序序中中加加入入多多媒媒体体功功能能。完完整整的的MCIMCI驱驱动动程程序序能能够够支支持持*.wav.wav、*.datdat、*.midi.midi和和*.cdacda等格式的文
6、件。等格式的文件。11.1 动画组件TAnimate2主要属性 (1)(1)AutoEnableAutoEnable属性属性 (2)(2)EnabledButtonsEnabledButtons属性属性 (3)AutoOpen(3)AutoOpen属性属性 (4)(4)AutoRewindAutoRewind属性属性 (5)(5)ColoredButtonColoredButton属性属性 (6)(6)DeviceTypeDeviceType属性属性 (7)Display(7)Display属性属性 (8)(8)DisplayRectDisplayRect属性属性(9)Mode(9)Mode属
7、性属性 (10)(10)FileNameFileName属性属性 (11)(11)StartPosStartPos属性属性 (12)(12)EndPosEndPos属性属性 (13)Position(13)Position属性属性 (14)Length(14)Length属性属性 11.1 动画组件TAnimate【例例11-211-2】使用使用TMediaPlayerTMediaPlayer组件编写一个简组件编写一个简单的单的AVIAVI文件播放器程序。文件播放器程序。11.2 简单的动画播放程序的设计 为了更好地理解为了更好地理解TAnimateTAnimate组件的属性、方法和事件,这一
8、节创建组件的属性、方法和事件,这一节创建一个简单的动画播放程序。通过实例一个简单的动画播放程序。通过实例3 3,更好地掌握,更好地掌握TAnimateTAnimate组组件的应用以及多媒体程序的设计思路。件的应用以及多媒体程序的设计思路。11.2 简单的动画播放程序的设计11.2.1 界面设计 新新建建一一个个工工程程PrjTAnimate.dprPrjTAnimate.dpr,按按图图11-611-6设设计计动动画画播播放放程程序序的的界界面面。窗窗体体及及其其组组件件属属性性的的设设置置值值如如表表11-211-2所示。所示。11.2 简单的动画播放程序的设计图图11-611-6设计动画播
9、放程序的界面设计动画播放程序的界面11.2 简单的动画播放程序的设计11.2.2 代码编写 1 1定义存放起始帧、结束帧、循环次数和总帧数定义存放起始帧、结束帧、循环次数和总帧数 varvar Form1:TForm1;Form1:TForm1;StartFrame,StopFrame,RepeatFrame,SumFrame:integerStartFrame,StopFrame,RepeatFrame,SumFrame:integer;11.2 简单的动画播放程序的设计 2 2TAnimate1TAnimate1组件的组件的OnOpenOnOpen事件处理程序代码事件处理程序代码 proc
10、edure TForm1.Animate1Open(Sender:procedure TForm1.Animate1Open(Sender:TObjectTObject););beginbegin ShowMessage(TAnimaetShowMessage(TAnimaet组件触发组件触发OnOpenOnOpen事件,初始化事件,初始化变量变量!);!);(*(*初始化变量初始化变量*)StartFrameStartFrame:=Animate1.StartFrame;:=Animate1.StartFrame;StopFrameStopFrame:=Animate1.StopFrame;
11、:=Animate1.StopFrame;RepeatFrameRepeatFrame:=Animate1.Repetitions;:=Animate1.Repetitions;SumFrameSumFrame:=Animate1.FrameCount;:=Animate1.FrameCount;Estartframe.TextEstartframe.Text:=:=IntToStr(StartFrameIntToStr(StartFrame););Estopframe.TextEstopframe.Text:=:=IntToStr(StopFrameIntToStr(StopFrame);)
12、;Esumframe.TextEsumframe.Text:=:=IntToStr(SumFrameIntToStr(SumFrame););Erepeatframe.TextErepeatframe.Text:=:=IntToStr(RepeatFrameIntToStr(RepeatFrame););end;end;11.2 简单的动画播放程序的设计 3 3“开始播放开始播放”按钮的按钮的OnClickOnClick事件处理程序代码事件处理程序代码 procedure TForm1.playClick(Sender:procedure TForm1.playClick(Sender:TOb
13、jectTObject););beginbegin StartFrameStartFrame:=:=StrToInt(Estartframe.textStrToInt(Estartframe.text););StopFrameStopFrame:=:=StrToInt(Estopframe.textStrToInt(Estopframe.text););RepeatFrameRepeatFrame:=:=StrToInt(Erepeatframe.textStrToInt(Erepeatframe.text););(*(*验证动画属性设置编辑框的数据合法性验证动画属性设置编辑框的数据合法性*)
14、if(if(StartFrameStartFrame StopFrameStopFrame)or(StopFrameor(StopFrame SumFrameSumFrame)thenthen 11.2 简单的动画播放程序的设计 begin /begin /输入范围错误输入范围错误 ShowMessageShowMessage(输入帧的范围错误,所有设置复位!输入帧的范围错误,所有设置复位!););Animate1.StartFrame:=1;Animate1.StartFrame:=1;Animate1.StopFrame:=Animate1.FrameCount;Animate1.Stop
15、Frame:=Animate1.FrameCount;Animate1.Repetitions:=0;Animate1.Repetitions:=0;Estartframe.TextEstartframe.Text:=1;:=1;Estopframe.TextEstopframe.Text:=IntToStr(Animate1.FrameCount);:=IntToStr(Animate1.FrameCount);Erepeatframe.TextErepeatframe.Text:=0;:=0;end end elseelse 11.2 简单的动画播放程序的设计 beginbegin (*设
16、置组件的设置组件的EnabledEnabled属性属性*)play.Enabledplay.Enabled:=False;:=False;stop.Enabledstop.Enabled:=True;:=True;Estartframe.EnabledEstartframe.Enabled:=False;:=False;Estopframe.EnabledEstopframe.Enabled:=False;:=False;Erepeatframe.EnabledErepeatframe.Enabled:=False;:=False;(*设置设置TAnimateTAnimate组件的属性,然后进
17、行播放组件的属性,然后进行播放*)Animate1.StartFrame:=Animate1.StartFrame:=StartFrameStartFrame;Animate1.StopFrame:=Animate1.StopFrame:=StopFrameStopFrame;Animate1.Repetitions:=Animate1.Repetitions:=RepeatFrameRepeatFrame;Animate1.Active:=True;/Animate1.Active:=True;/进入播放状态进入播放状态 end;end;end;end;11.2 简单的动画播放程序的设计4
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Delphi程序设计及实验指导 Delphi 程序设计 实验 指导 电子 教案 11
限制150内