资源预览内容
第1页 / 共22页
第2页 / 共22页
第3页 / 共22页
第4页 / 共22页
第5页 / 共22页
第6页 / 共22页
第7页 / 共22页
第8页 / 共22页
第9页 / 共22页
第10页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
传播优秀Word版文档 ,希望对您有帮助,可双击去除!JAVA课程设计报告课 题: 带面板的视频播放器的制作 专业班级: 计算机科学与计算学 学 号: 201017010227 姓 名: 朱 林 同组成员: 李 伟 指导教师: 唐 石 评阅意见:评定成绩: 指导老师签名: 年 月 日目 录目 录第1章 课程设计的目的和意义31.1 设计目的31.2 设计意义3第2章 课程设计要求3第3章 需求分析4第4章 程序设计过程5 4.1 实验原理5 4.2 程序设计图6 4.3 设计及核心代码7第5章 系统测试15第6章 心得体会19第7章 参考文献20第1章 课程设计的目的和意义1.1 设计目的 1.训练掌握,加深理解并巩固java语言程序设计课程中所学到的基本概念、编程思路以及语法知识2.综合运用java程序设计的编程方法,能够利用这些程序设计方法来解决工程和科研中常见的实际问题3.培育分析问题解决问题的能力,进一步提高并巩固进行大型程序设计的能力4.提高学生实践论文撰写能力1.2 设计意义java 是一种高级编程语言,是编程的基本工具,是为软件开发,网页制作等与计算机编程有关专业的基础课程!学好java语言程序设计对计算机专业的人来说必不可少的一件事,对大学生将来进入软件行业从事java软件开发有着不可替代的作用,为大学生提供了一种锻炼自我勇于实践的能力,也提高大学生的动手能力,所以课程设计是相当的重要。第2章 课程设计要求Java程序设计是计算机网络工程专业一门重要的专业必修课。为了进一步巩固课堂上所学到的知识,深刻把握Java技术的重要概念及其面向对象的特性,锻炼学生熟练的应用面向对象的思想和设计方法解决实际问题的能力,开设Java程序设计的课程设计。课程设计的任务是完成课程设计内容,写出课程设计报告。要求学生掌握:1.掌握Java的语言规范,面向对象的核心概念和特性;2.掌握Java的编程技术,包括异常处理,图形界面设计,多线程,网络通信程序等;3.掌握Java应用软件的开发环境和开发过程;4.掌握基于Jsp网站的开发环境和开发过程;5.掌握面向对象的思想和程序设计方法。第3章 需求分析3.1任务目的:1实现视频文件的正确播放;2. 能够实现对视频播放的控制,如暂停,播放,快进,快退,上一个,下一个等功能;3能够进行文件视频的选择,全屏,音量的控制,拖动,播放模式的控制等;4任意改变播放视频界面大小等功能。3.2程序的设计、调试、运行的软件环境:操作系统:Windows XP(SP2)数据库及数据库管理软件:SQL Server 2005JDK环境:Java SE Development Kit(JDK)Version 6开发工具:Eclipse运行平台:Windows、Linux各个版本、MAC等任何平台运行环境:Java SE Runtime Environment(JRE)Version第4章 程序设计过程4.1实验原理JMF提供了一个平台无关的框架来呈现时基媒体(time-based media)。JavaMediaPlayerAPI的设计目标是支持多种标准的媒体格式,包括MPEG-1,MPEG-2,QuickTime,AVI,WAV,AU和MIDI.使用JMF,可以同步呈现不同来源的时基媒体。现有的一些媒体播放器都严重依赖原生码来执行解压缩、渲染 等 计算密集型任务。而JMF API则隐藏了具体实现,只提供抽象的编程接口。举例来说,一个用JMF制作的播放器,具体运行的过程中可能会调用到操作系统的本地方法,但开发者写代码时可以无视本地方法的存在。JMF Player API : 接入不同的协议和分发(传输)机制 接入不同的媒体数据类型定义事件模型,用于Player和应用程序间的异步通信JMF对于errors(错误)和exceptions(异常)作如下约定。 Java Media Errors 是当程序调用了一个当前状态下非法的方法时抛出的。Errors是在外部程序有控制权的状态下执行了非法的请求而抛出的。举例来说,调用一个处于Started的Player的方法时抛出的就是error。开发者有责任在调用方法前确认Player已被停止。JMF error是可以通过优化代码来避免的,应用程序不应该捕获JMF errors, 好的应用程序不会碰到这些错误。 Java Media Exceptions是当程序调用了不能完成的方法或在当前状态下不适用的方法。Exceptions是在外部程序没有控制权的状态下抛出的。例如当我们试图同步两个time-base不匹配的Player时,就会抛出异常。之所以是异常而不是错误,是因为我们无从检测time-base是否匹配,是无法预期的。有时,JMF的一些方法会返回非预期的结果,通过检查返回直,我们可以检测实际发生的事情: 我们可以通过返回直检查实际被设置的数值,例如:并不是所有的播放器都可以每周期5次的速率呈现媒体数据,如果我们调了setRate(5.0),播放器将会设置一个合法的近似直,这个数值可能是5.0也可能是1.0,我们需要检查返回数据来确认被设置的数据。 有时,我们请求的信息是不可用的。例如:Player在播完一个媒体之前,可能不知道媒体的时长,这时如果我们调了getDuration(),getDuration会返回 DURATION_UNKNOWN.当媒体被播放完一次,再调getDuration时,则会返回正确的时长。JMF播放器文件播放上一个设置打开循环退出暂停删除下一个4.2程序设计图4.3设计及核心代码创建“文件”菜单l 创建“打开”菜单l 把JMFMediaPlayer对象注册成功为“打开”菜单项动作事件的监听器l 把“打开”菜单项加入“文件”菜单l 把“文件”菜单中加入一条水平分隔线l 创建带检查框的“循环”菜单项l 把JMFMediaPlayer对象注册成功为“循环”菜单项动作事件的监听器l 把“循环”菜单项加入“文件”菜单l 在“文件”菜单项中加入一条水平分隔线l 按照创建“打开”菜单项的过程,创建“退出”菜单项l 创建“播放”菜单l 创建“上一个”菜单l 创建“下一个”菜单项l 创建“保存”菜单l 把JMFMediaPlayer对象注册成功为“暂停”菜单项动作事件的监听器l 把“暂停”菜单项加入“设置”菜单l 在“设置”菜单中加入一条水平分隔线l 创建“删除”菜单项l 把JMFMediaPlayer对象注册成功为“删除”菜单项动作事件的监听器l 创建一个菜单条(MenuBar)l 把“文件”菜单加入到菜单条l 把“播放控制”菜单加入到菜单条l 把“播放列表”菜单加入到菜单条/ 创建播放器的菜单 JMenu zhu= new JMenu(设置); JMenu fileMenu = new JMenu(文件); JMenu zhu1= new JMenu(播放);JMenu zhu2= new JMenu(上一个);JMenu zhu3= new JMenu(下一个);JMenuItem openMemuItem = new JMenuItem(打开); JMenuItem haha1 = new JMenuItem(暂停); JMenuItem haha2 = new JMenuItem(删除); openMemuItem.addActionListener(this); fileMenu.add(openMemuItem); zhu.add(haha1); zhu.addSeparator(); zhu.add(haha2); zhu.addSeparator(); zhu.add(haha3); zhu.addSeparator(); zhu.add(haha4); zhu.addSeparator(); zhu.add(haha5); zhu.addSeparator(); / 添加一个分割条 fileMenu.addSeparator(); / 创建一个复选框菜单项 JCheckBoxMenuItem loopMenuItem = new JCheckBoxMenuItem(循环, false); loopMenuItem.addItemListener(this); fileMenu.add(loopMenuItem); fileMenu.addSeparator(); JMenuItem exitMemuItem = new JMenuItem(退出); exitMemuItem.addActionListener(this); fileMenu.add(exitMemuItem); JMenuBar menuBar = new JMenuBar(); menuBar.add(fileMenu); menuBar.add(zhu);menuBar.add(zhu1);menuBar.add(zhu2);menuBar.add(zhu3);this.setJMenuBar(menuBar); this.setSize(200, 200); try / 设置界面的外观,为系统外观 UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName(); SwingUtilities.updateComponentTreeUI(this); catch (Exception e) e.printStackTrace(); this.setVisible(true); 动作监听器动作监听器根据用户的操作作出相应的反应(1) 如果动作事件起源于“退出”菜单项,触发一个给查监听器的窗口关闭事件(2) 如果动作事件起源于“播放“菜单项,判断当前是否存在一个播放器,存在则将该播放器置于运动状态
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号