首页>代码>java swing开发微型音乐播放器客户端(可缩放至托盘)>/SmallMusicPlayer/src/com/soft/util/PlayMusic.java
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();
		}
	}
}
最近下载更多
756398953  LV12 8月8日
你是傻子  LV9 2023年11月28日
pangzhihui  LV14 2023年11月13日
另类清晨  LV8 2023年5月15日
初心不负丶方得始终  LV10 2023年4月21日
wmm500  LV3 2022年12月2日
xuanmu1  LV1 2022年7月22日
1019796174  LV1 2022年6月29日
wanglinddad  LV55 2022年6月25日
段朝洪  LV15 2021年12月21日
最近浏览更多
wodezl 11月19日
暂无贡献等级
mao-xp 10月31日
暂无贡献等级
quye12 9月9日
暂无贡献等级
cxz2132132  LV11 2023年12月9日
你是傻子  LV9 2023年11月28日
入场哇t  LV1 2023年11月27日
hanskkkkkkk 2023年11月27日
暂无贡献等级
pangzhihui  LV14 2023年11月13日
NicLee 2023年7月7日
暂无贡献等级
lzl111213  LV1 2023年6月21日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友