Java实现的简单音乐播放器功能示例
作者:c_jian 时间:2021-08-06 20:06:54
本文实例讲述了Java实现的简单音乐播放器功能。分享给大家供大家参考,具体如下:
应用名称:Java简单的音乐播放器
用到的知识:Java GUI编程,线程,IO
开发环境:win8+eclipse+jdk1.8
功能说明:可以选择内置的音乐文件播放,循环播放,停止。PS:这个播放器只能播放.au .aiff .wav .midi .rfm格式的音频。
效果图:
源代码:
import java.applet.AudioClip;
import java.awt.*;
import java.net.*;
import java.awt.event.*;
import java.io.*;
import java.applet.*;
import javax.swing.*;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JDialog;
public class MusicPlayer extends JDialog implements Runnable,ItemListener,ActionListener{
/**
*
*/
private static final long serialVersionUID = 1L;
Thread thread;
JComboBox<Serializable> choiceMusic;
AudioClip clip;
JButton buttonPlay,buttonLoop,buttonStop;
String str;
MusicPlayer(){
thread=new Thread(this);
choiceMusic=new JComboBox();
choiceMusic.addItem("选择音频文件");
choiceMusic.addItem("src/1.wav");
choiceMusic.addItem("2.wav");
choiceMusic.addItem("3.wav");
choiceMusic.addItemListener(this);
buttonPlay=new JButton("播放");
buttonLoop=new JButton("循环");
buttonStop=new JButton("停止");
buttonPlay.addActionListener(this);
buttonLoop.addActionListener(this);
buttonStop.addActionListener(this);
setLayout(new FlowLayout());
add(choiceMusic);
add(buttonPlay);
add(buttonLoop);
add(buttonStop);
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
setSize(350,80);
}
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==buttonPlay)
clip.play();
else if(e.getSource()==buttonLoop)
clip.loop();
else if(e.getSource()==buttonStop)
clip.stop();
}
@Override
public void itemStateChanged(ItemEvent arg0) {
str=choiceMusic.getSelectedItem().toString();
if(!(thread.isAlive())){
thread=new Thread(this);
}
try{thread.start();
}
catch(Exception ee){}
}
@Override
public void run() {
try {
File file=new File(str);
URI uri=file.toURI();
URL url=uri.toURL();
clip=Applet.newAudioClip(url);
} catch (MalformedURLException e) {
}
}
public static void main(String[] args) {
MusicPlayer musicplayer=new MusicPlayer();
musicplayer.setVisible(true);
}
}
希望本文所述对大家java程序设计有所帮助。
来源:https://blog.csdn.net/C_jian/article/details/50509044
标签:Java,音乐播放器
0
投稿
猜你喜欢
学习Java HashMap,看这篇就够了
2023-11-11 11:18:56
Android高性能日志写入方案的实现
2022-09-18 17:12:50
Android实现京东上滑效果
2021-10-11 07:27:11
Unity3D仿写Button面板事件绑定功能
2023-03-14 10:38:14
redis实现队列的阻塞、延时、发布和订阅
2021-07-02 10:56:19
Android中手机录屏并转换GIF的两种方式
2021-12-03 13:00:52
Android中Java根据文件头获取文件类型的方法
2023-05-08 18:27:48
Unity查找游戏物体的六种方式详解
2021-07-09 18:23:17
springboot整合Quartz实现动态配置定时任务的方法
2023-03-08 22:13:10
Android中实现长按修改ListView对象的内容
2022-04-13 15:09:08
Java将Exception信息转为String字符串的方法
2022-12-01 08:39:35
spring mvc中的@ModelAttribute注解示例介绍
2023-10-15 07:07:06
HashMap在JDK7与JDK8中的实现过程解析
2022-03-04 18:26:44
mybatis-plus生成mapper扩展文件的方法
2023-08-10 07:29:05
自定义一个异常类模板的简单实例
2022-04-30 02:53:14
eclipse的git插件安装、配置与使用详解
2021-07-23 10:04:47
解决@RequestBody使用不能class类型匹配的问题
2023-04-20 19:28:10
Spring中的后置处理器BeanPostProcessor详解
2023-02-24 00:50:03
C#基于简单工厂模式实现的计算器功能示例
2023-06-19 12:40:10
Java 可视化垃圾回收_动力节点Java学院整理
2023-02-19 07:03:55