- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
渐美播放器设计文档
渐美播放器设计文档
1, 编写目的:
为了让软件开发人员了解该播放器的开发思想及其过程,并且能发现所存在的问题,及时纠正,同时也有利于本人维护软件,以期使这个播放器逐渐完美!
2软件制作与运行环境:
(1)软件开发环境:Windows2000 开发工具:Delphi 7.0
(2)软件大小:1.00M
(3)软件运行环境:Windows 2000或更高版本的操作系统
3,参考书籍
Delphi5编程指南
Delphi编程技巧及常见问题分析
3,软件的概要设计:
本软件制作四个窗体,主窗体,播放列表窗体,视频窗体及属性窗体,有关信息显示窗体。(需要安装BmpShape控件和TrayIcon控件)
(2 ) 各功能的实现,采用Delphi自带的媒体组件和调用系统Api函数来实现。4, 设计过程难点功能的实现及总结:
功能 总 结
1 暂停播放 if mediaplayer1.Mode in [mpPlaying] then
begin
mediaplayer1.Pause;
Timer1.Enabled:=False;//计时器不可用,停止计时
exit;//不要忘记这条语句,否则总是暂停又播放
end;
if mediaplayer1.Mode in [mpPaused] then
begin
mediaplayer1.play;
Timer1.Enabled:=true;//计时器恢复计时
end;
NewLen:=round(ProgressBar1.Max/ProgressBar1.Width)*X;
if mediaplayer1.Mode in [mpPlaying] then //是否正在播放
begin
mediaplayer1.Stop; //若在播放,则先停止
Mediaplayer1.Position:=NewLen;
//mediaplayer1.Open;不要这条子
mediaplayer1.Play;
Timer1.Enabled:=true;
end;
1,文件改名 A,用ReNameed.Parent:= LbName;//使得ReNameed.Width 随Lbname.Width改变而变
B ,若文件名没变或改为空,则不进行改名操作
if (ReNameEd.Text=’’) then
ReNameEd.hide;
C, 在播放列表中,为方便处理 “ 改名” 事件,在事件中用两个私有变量保存(是正在播放的,还是所有音乐的列表),省得每次都去判断,达到优化代码的目的
D, ReNameed的宽度要根据文件列表是否有滚动条动态改变ReNameed的宽度
ListboxName:=Tlistbox(sender);
if listboxName.ItemHeight*ListboxName.CountListboxName.Height then
ReNameEd.Width:=ListboxName.Width-22
else
ReNameEd.Width:=ListboxName.Width;
E, 当ReNameEd隐藏时也会触发ReNameEdExit事件
2,复制文件 A,, 在复制文件时,用到TshFileOPeration这个类,要记得
Fillchar(F,sizeof(F),0);// //变量清零 不加就会出错 不能访问文件但用这个会经常出错,后改用TFileStream,如下:S, T: TFileStream;
S:=TFileStream.Create(FromFile,fmopenRead or fmShareDenyNone);
try
T:=TFileStream.Create(FileName+Filter,fmCreate or fmopenWrite);
if T.CopyFrom(S,S.Size)=S.Size then
B, 用Tmemorystream,方法简单,但对内存要求较高
with TMemorystream.Create do//相当于创建了TMemorystream的一个实例AMemorystream
try
LoadF
文档评论(0)