Java Swing播放器,功能完善,完整源码 直接使用 窗体版本

今天为大家分享一个java语言编写的播放器程序,目前系统功能已经很全面,后续会进一步完善。整个系统界面漂亮,有完整得源码,希望大家可以喜欢。喜欢的帮忙点赞和关注。一起编程、一起进步

开发环境

开发语言为Java,开发环境Eclipse或者IDEA都可以,数据为MySQL。运行主程序,或者执行打开JAR文件即可以运行本程序。

系统框架

利用JDK自带的SWING框架开发。纯窗体模式,直接运行Main文件即可以。同时带有详细得设计文档。

主要功能

程序启动

下载源码后,导入到Eclipse或者IDEA中,运行PlayerMain.java,出现播放器的主界面后,程序运行成功

主要模块

本项目是一个音乐播放器,主要实现MP3的播放,实现的主要功能,包括以下功能点

1 点击播放清单。首先选择要添加的MP3清单,一次添加一条,也可以添加多条。

2 点击开始,播放当前选中的MP3歌曲(循环播放和单曲播放)

3 点击停止,播放当前选中的MP3歌曲

4 上一曲:跳转到上一首播放的歌曲

5 下一曲:跳转到下一首播放的歌曲

6 删除当前播放的歌曲清单

7 清空播放清单:删除播放清单的所有歌曲

实现效果

关键代码

package com.soft.util;

import java.applet.AudioClip;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JComboBox;

import javazoom.jl.player.Player;

public class PlayMusic{
    private Player player;
    private String filename;
    JButton btn;
    String old;
    @SuppressWarnings("rawtypes")
    JComboBox comboBox;
    boolean flag=false;
    Thread r = new R();
    //private String[] str = {"杨坤,郭采洁 - 答案.mp3","许嵩 - 你若成风.mp3","纸短情长(女声完整版)-纸短情长(女声完整版).mp3","纸短情长-粤语-纸短情长-粤语.mp3"};
    
    public PlayMusic(String filename,JButton btn,JComboBox comboBox) {
        // TODO Auto-generated constructor stub
        this.filename = filename;
        this.btn = btn;
        this.comboBox = comboBox;
    }
    public PlayMusic() {
        // TODO Auto-generated constructor stub
    }
    
    public static AudioClip loadSound(String filename) {
        URL url = null;
        try {
            String src = "file:" + filename;
            System.out.println(src);
            url = new URL(src);
        } 
        catch (MalformedURLException e) {;}
        return JApplet.newAudioClip(url);
    }
    
    public void play() {
        try {
            comboBox.setSelectedIndex(0);
            BufferedInputStream buffer = new BufferedInputStream(new FileInputStream(filename));
            System.out.println("播放音乐:"+filename+"-----"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
            player = new Player(buffer);
            player.play();
            if(player.isComplete()==true) {
                flag=true;
                System.out.println("-----------"+new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())+"-------------");
                close();
                btn.setText("开始");
                comboBox.setSelectedIndex(1);
                /*Random r = new Random();
                play("E:\\CloudMusic\\"+str[r.nextInt(str.length)]);*/
            }

        } catch (Exception e) {
            System.out.println(e);
        }
    }
    public void close() {
        player.close();
    }
    public void start() {
        r.start();
    }
    @SuppressWarnings("deprecation")
    public void stop() {
        r.stop();
    }
    @SuppressWarnings("deprecation")
    public void suspend() {
        r.suspend();
    }
    @SuppressWarnings("deprecation")
    public void resume() {
        r.resume();
    }
    public boolean isComplete(){
        return flag;
    }
    
    class R extends Thread{
        @Override
        public void run() {
            // TODO Auto-generated method stub
            play();
        }
    }
}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

计算机程序

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值