java课程设计-音乐播放器_Java程序设计课程设计报告音乐播放器

这是一个Java程序设计课程设计报告,详细介绍了如何开发一个音乐播放器。报告涵盖了音乐播放器的实现,包括打开、播放、暂停和停止音乐的功能,以及菜单栏的设置。通过监听事件和控制器来控制音乐的播放流程。
摘要由CSDN通过智能技术生成

41528d3028836879cd698677c3999917.gifJava程序设计课程设计报告音乐播放器

《Java及Java web应用开发》实验报告 设计题目: Java音乐播放器 专 业 计算机信息管理 班 级 1班 学 号 姓 名 2014年12月24 日 import javax.media.ControllerEvent; import javax.media.ControllerListener; import javax.media.EndOfMediaEvent; import javax.media.PrefetchCompleteEvent; import javax.media.RealizeCompleteEvent; import javax.media.*; import javax.swing.*; import java.awt.*; import java.awt.event.*; public class MediaPlayer extends JFrame implements ActionListener, ItemListener, ControllerListener { String title; Player player; boolean first = true, loop = false; Component vc, cc; String currentDirectory=null; // 构造函数,其中包括了设置响应窗口事件的监听器。 MediaPlayer(String title) { super(title); /* 关闭按钮的实现。。 */ addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { dispose(); } public void windowClosed(WindowEvent e) { if (player != null) player.close(); System.exit(0); } }); // 调用程序菜单栏的方法成员完成菜单的布置 setupMenu(); setSize(400, 400); setVisible(true); } // 本方法用以设置程序菜单栏 public void setupMenu() { // 设置一个菜单 Menu f = new Menu(“文件“); // 往设置的菜单添加菜单项 MenuItem mi = new MenuItem(“打开“); f.add(mi); mi.addActionListener(this); f.addSeparator(); CheckboxMenuItem cbmi = new CheckboxMenuItem(“循环“, false); cbmi.addActionListener(this); f.add(cbmi); f.addSeparator(); MenuItem ee = new MenuItem(“退出“); ee.addActionListener(this); f.add(ee); f.addSeparator(); Menu l = new Menu(“播放列表“); Menu c = new Menu(“播放控制“); MenuItem move = new MenuItem(“播放“); move.addActionListener(this); c.add(move); c.addSeparator(); MenuItem pause = new MenuItem(“暂停“); pause.addActionListener(this); c.add(pause); c.addSeparator(); MenuItem stop = new MenuItem(“停止“); stop.addActionListener(this); c.add(stop); c.addSeparator(); // 设置一个菜单栏 MenuBar mb = new MenuBar(); mb.add(f); mb.add(c); mb.add(l); // 将构造完成的菜单栏交给当前程序的窗口; setMenuBar(mb); } // 动作时间响应成员;捕捉发送到本对象的各种事件; public void actionPered(ActionEvent e) { // TODO Auto-generated stub String cufile, selectfile, currentDirectory; if (e.getActionCommand().equals(“退出“)) { // 调用dispose以便执行windowClosed dispose(); return; } // 此事表明拥护选择了“播放”命令; // 如果当前有一个文件可以播放则执行播放命令; if (e.getActionCommand().equals(“播放“)) { if (player != null) { player.start(); } return; } // 如果当前正在播放某一文件,则执行暂停; if (e.getActionCommand().equals(“暂停“)) { if (player != null) { player.stop(); } return; } // 停止命令的响应; if (e.getActionCommand().equals(“停止“)) { if (player != null) { player.stop(); player.setMediaTime(new Time(0)); } return; } // 用户选择要播放的媒体文件 if (e.getActionCommand().equals(“打开“)) { FileDialog fd = new FileDialog(this, “打开媒体文件“, FileDialog.LOAD); // fd.setDirectory(currentDirectory); fd.setVisible(true); // 如果用户放弃选择文件,则返回 if (fd.getFile() == null) { return; } // 保存了所选文件的名称及其路径名称已被稍后使用 // 同时设置当前文件夹路径 selectfile = fd.getFile()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值