音乐播放器Java课程设计报告.doc_第1页
音乐播放器Java课程设计报告.doc_第2页
音乐播放器Java课程设计报告.doc_第3页
音乐播放器Java课程设计报告.doc_第4页
音乐播放器Java课程设计报告.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程设计报告课程设计题目:java音乐播放器 学生姓名:专 业:XXXXXXXXXXXXX班 级:指导教师: 20XX年X月X日一、课程设计目的1、编程设计音乐播放软件,使之实现音乐播放的功能。2、培养学生用程序解决实际问题的能力和兴趣。3、加深java中对多媒体编程的应用。二、课程设计的要求 利用学到的编程知识和编程技巧,要求学生:1、系统设计要能完成题目所要求的功能,设计的软件可以进行简单的播放及其他基本功能。2、编程简练,可用,尽可能的使系统的功能更加完善和全面3、说明书、流程图要清楚。 三、课程设计内容 1、课程设计的题目及简介音乐播放软件要求:有图形界面,能播放MP3歌曲,有播放列表,前一首、后一首等常用播放软件功能。2、设计说明主要运用多媒体编程、图形界面、数组及循环进行设计,从而实现简单的音乐播放。public MyMusicPlayer():实现窗口的成员方法publi c void run():实现改变歌曲的播放状态的成员方法public AudioClip loadSound(String filename):实现对声音的加载public void mouseClicked(MouseEvent e):实现对按钮的监听public void itemStateChanged(ItemEvent arg0):返回一个AudioClip对象3、程序流程图开始出现界面选择播放歌曲播放暂停前一首后一首结束4、程序清单import java.awt.*;import javax.swing.*;import java.applet.*;import java.awt.event.*;import .*;public class MyMusicPlayer extends Thread implements MouseListener,ItemListenerJFrame MainFrame=new JFrame(MyMusicPlayer); /定义主窗体JLabel songname=new JLabel(); /用标签显示状态JButton last=new JButton();JButton play=new JButton(); JButton next=new JButton();JButton loop=new JButton(); /定义上一曲,播放,下一曲,循环四个按钮JLabel list=new JLabel(播放列表);List songlist=new List(); /显示歌曲列表AudioClip song=new AudioClip10; /将音频文件放在数组中AudioClip playsong; /当前选定播放的音频文件String name=黄小琥 - 顺其自然.wav,陈奕迅-张氏情歌.wav,黄小琥 _没那么简单.wav, 戚薇-如果爱忘了.wav,郭采洁 - 狠狠哭.wav,test.wav; /将所有文件名存放在字符串数组name中String playname; /当前选定播放的音频名int j=0; /记录当前选定播放的是哪首歌曲,默认为第一首boolean playbutton=true; /记录播放状态,默认为暂停播放boolean loopbutton=false; /记录循环状态,默认为没有循环 Thread thread=new Thread(pl); static MyMusicPlayer Yu; public MyMusicPlayer() MainFrame.setLayout(null); MainFrame.setBounds(300,50,310,500); MainFrame.setVisible(true); MainFrame.setDefaultCloseOperation(3); MainFrame.add(songname); Font sname=new Font(斜体,Font.ITALIC,18); songname.setFont(sname); /设置显示状态的字体为斜体 songname.setText(我的音乐播放器); songname.setBounds(10,10,300,40); last.setBounds(10,70,50,40); play.setBounds(70,70,50,40); /设置四个功能键位置和大小 next.setBounds(130,70,50,40); loop.setBounds(190,70,50,40); last.setIcon(new ImageIcon(1.png); play.setIcon(new ImageIcon(2.png); next.setIcon(new ImageIcon(3.png); loop.setIcon(new ImageIcon(4.png); /设置四个功能键的图片 last.addMouseListener(this); play.addMouseListener(this); next.addMouseListener(this); loop.addMouseListener(this); /添加按键鼠标监听器 MainFrame.add(last); MainFrame.add(play); MainFrame.add(next); MainFrame.add(loop); list.setBounds(10,120,100,30); Font lis=new Font(宋,Font.BOLD,15); list.setFont(lis); /显示“播放列表” MainFrame.add(list); songlist.setBounds(10,150,250,300); songlist.setBackground(Color.GREEN); /设置播放列表的背景色为绿色 songlist.setVisible(true); songlist.addItemListener(ItemListener) this); /添加列表监听器 MainFrame.add(songlist); for(int i=0;iname.length;i+) songi=loadSound(namei); /逐个获取音频文件 songlist.add(namei); /将歌曲名添加到播放列表 playsong=song0; public static void main(String args) Yu=new MyMusicPlayer(); Yu.start(); public void mouseClicked(MouseEvent e) JButton btn=(JButton)e.getSource();playsong.stop();if(btn=play) if(playbutton=false) playbutton=true; else playbutton=false; /当按下play后改变播放状态elseif(btn=last) j-=1; /当按下last后将上一曲选定 if(j=name.length) j=0; /若之前选定为最后一首,则跳到第一首playbutton=true;loopbutton=false;elseif(btn=loop) if(loopbutton=false) loopbutton=true; playbutton=true; else /按下loop后,改变循环状态和播放状态 loopbutton=false; playbutton=false; if(playbutton=true)Yu.run();else songname.setText(暂停播放:+playname); /暂停播放歌曲 play.setIcon(new ImageIcon(2.png);public void mouseEntered(MouseEvent arg0) / TODO Auto-generated method stubpublic void mouseExited(MouseEvent arg0) / TODO Auto-generated method stubpublic void mousePressed(MouseEvent arg0) / TODO Auto-generated method stubpublic void mouseReleased(MouseEvent arg0) / TODO Auto-generated method stubpublic void itemStateChanged(ItemEvent arg0) String str=songlist.getSelectedItem();playsong.stop();for(int i=0;iname.length;i+) if(str=namei) j=i; break; Yu.run(); public void run()playsong=songj; /播放状态为播放时 playsong.play(); /播放选定歌曲 playname=namej; if(loopbutton=true) playsong.loop(); /循环播放选定歌曲 songname.setText(循环播放:+playname); else songname.setText(正在播放:+playname); songlist.select(j); /播放列表中选定播放歌曲项目 play.setIcon(new ImageIcon(5.png); public AudioClip loadSound(String filename) /返回一个AudioClip对象 URL url=null; try url=new URL(file:+filename); catch(MalformedURLException e) return Applet.newAudioClip(url); 5、程序运行结果四、课程设计总结 经过这几天的Java课程设计,让我知道了做课程设计的一般方法,通过各种努力终于完成了设计要求.这次课程设计基本上含盖了大学一年学习到

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论