当前位置:文档之家› 音乐播放器java源代码

音乐播放器java源代码

音乐播放器java源代码
音乐播放器java源代码

package com.ding.player;

import java.io.File;

import java.io.IOException;

import javax.sound.sampled.AudioFormat;

import javax.sound.sampled.AudioInputStream;

import javax.sound.sampled.AudioSystem;

import javax.sound.sampled.DataLine;

import javax.sound.sampled.SourceDataLine;

public class Player {

private String path;//文件路径

private String name;//文件名称

private AudioFormat audioFormat;//播放格式

private AudioInputStream audioInputStream;//音乐播放输入流

private SourceDataLine sourceDataLine;// 播放设备

private boolean isStop = false;// 播放停止标志

/**

* 创建对象时需要传入播放路径及文件名称

* @param path

* @param name

*/

public Player(String path ,String name) {

this.path = path;

https://www.doczj.com/doc/368578115.html, = name;

}

/**

* 播放音乐

*/

public void play() {

File file = new File(path + name);

try {

//获取音乐播放流

audioInputStream = AudioSystem.getAudioInputStream(file);

//获取播放格式

audioFormat = audioInputStream.getFormat();

/*System.out.println("取样率:"+ audioFormat.getSampleRate());

Map map = audioFormat.properties();

Iterator it = map.entrySet().iterator();

while(it.hasNext()) {

Map.Entry m = (Entry) it.next();

System.out.println(m.getKey()+":"+m.getValue());

}*/

//其它格式音乐文件处理

if(audioFormat.getEncoding() !=

AudioFormat.Encoding.PCM_SIGNED) {

audioFormat = new

AudioFormat(AudioFormat.Encoding.PCM_SIGNED, audioFormat.getSampleRate(), 16, audioFormat.getChannels(), audioFormat.getChannels()*2,

audioFormat.getSampleRate(), audioFormat.isBigEndian());

audioInputStream =

AudioSystem.getAudioInputStream(audioFormat, audioInputStream);

}

//打开输出设备

https://www.doczj.com/doc/368578115.html, dataLineInfo = new

https://www.doczj.com/doc/368578115.html,(SourceDataLine.class,

audioFormat,AudioSystem.NOT_SPECIFIED);

sourceDataLine = (SourceDataLine)

AudioSystem.getLine(dataLineInfo);

sourceDataLine.open(audioFormat);

sourceDataLine.start();

//启动播放线程

new Thread() {

@Override

public void run() {

try {

int n = 0;

byte tempBuffer[] = new byte[320];

while(n != -1) {

//停止播放入口,如果isStop被置为真,结束播放

if(isStop) break;

//将音乐输入流的数据读入tempBuffer缓存

n = audioInputStream.read(tempBuffer,0 , tempBuffer.length);

if(n>0) {

//将缓存数据写入播放设备,开始播放

sourceDataLine.write(tempBuffer, 0, n);

}

}

audioInputStream.close();

sourceDataLine.drain();

sourceDataLine.close();

} catch (IOException e) {

e.printStackTrace();

throw new RuntimeException();

}

}

}.start();

} catch (Exception e) {

e.printStackTrace();

System.exit(0);

throw new RuntimeException();

}

}

/**

* 停止播放

*/

public void stop() {

try {

isStop = true;

audioInputStream.close();

sourceDataLine.drain();

sourceDataLine.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

package com.ding.UI;

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.io.File;

import java.util.Vector;

import javax.swing.ImageIcon;

import javax.swing.JButton;

import javax.swing.JFileChooser;

import javax.swing.JPanel;

import javax.swing.JScrollPane;

import javax.swing.JTable;

import javax.swing.filechooser.FileNameExtensionFilter;

import javax.swing.table.DefaultTableModel;

import com.ding.player.Player;

public class MusicPanel extends JPanel{

private JButton add, playbtn, stopbtn, deletebtn, deleteAllbtn, upbtn, downbtn;//播放、停止、删除、删除全部、向上。向下按钮

private JTable table; //歌曲信息表

private Player player;

public MusicPanel() {

initCompont();

}

/**

* 初始化界面

*/

private void initCompont() {

//各个按钮赋初始值

add = new JButton("导入");

playbtn = new JButton("试听");

stopbtn = new JButton("停止");

deletebtn = new JButton("单曲删除");

deleteAllbtn = new JButton("全部删除");

upbtn = new JButton(new ImageIcon("img/up.png"));

downbtn = new JButton(new ImageIcon("img/down.png"));

//导入按钮点击设置

add.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

addFile();

}

});

//试听按钮点击设置

playbtn.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

if(player!=null) {

player.stop();

player = null;

}

int rowNum = table.getSelectedRow();

if(rowNum != -1) {

player = new Player((String)table.getValueAt(rowNum, 1) + "\\" ,(String)table.getValueAt(rowNum, 0));

System.out.println((String)table.getValueAt(rowNum,

1)+"\\"+(String)table.getValueAt(rowNum, 0));

player.play();

}

}

});

//停止按钮点击设置

stopbtn.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

if(player != null) {

player.stop();

player = null;

}

}

});

//单曲删除按钮点击设置

deletebtn.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

int rowNum = table.getSelectedRow();

if(rowNum != -1) {

((DefaultTableModel)table.getModel()).removeRow(rowNum);

}

}

});

//删除全部按钮点击设置

deleteAllbtn.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

for(int i = table.getRowCount()-1; i>=0; i--) {

((DefaultTableModel)table.getModel()).removeRow(i);

}

}

});

downbtn.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

int n = table.getSelectedRow() + 1;

if(n < table.getRowCount()) {

table.setRowSelectionInterval(n, n);

}

}

});

upbtn.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

int n = table.getSelectedRow() - 1;

if(n < -1) {

n = table.getRowCount() - 1;

}

if(n >= 0) {

table.setRowSelectionInterval(n, n);

}

}

});

//添加各个按钮

JPanel btnPanel = new JPanel();

btnPanel.add(add);

btnPanel.add(playbtn);

btnPanel.add(stopbtn);

btnPanel.add(deletebtn);

btnPanel.add(deleteAllbtn);

btnPanel.add(upbtn);

btnPanel.add(downbtn);

this.setLayout(new BorderLayout());

this.add(btnPanel, BorderLayout.NORTH);

Vector tableContent = new Vector(); //表格内容

Vector columnName = new Vector();//歌曲信息表格列名称

columnName.add("歌曲名称");

columnName.add("存放路径");

//设置table

table = new JTable(tableContent, columnName);

table.setSelectionBackground(Color.blue);

table.setSelectionForeground(Color.LIGHT_GRAY);

this.add(new JScrollPane(table), BorderLayout.CENTER);

this.setSize(300, 210);

}

/**

* 添加文件

*/

private void addFile() {

JFileChooser fc = new JFileChooser();

//设置选入文件类型

FileNameExtensionFilter filter = new FileNameExtensionFilter("mp3 or wav file", "mp3","wav","MP3","WAV");

fc.setFileFilter(filter);

fc.setFileSelectionMode(JFileChooser.FILES_ONLY);//设置只选择文件

fc.setMultiSelectionEnabled(true);//设置选择多个文件

int intRetVal = fc.showDialog(this, "打开");

//获取文件并添加到table

if(intRetVal == JFileChooser.APPROVE_OPTION) {

File[] file = fc.getSelectedFiles();

String name;

for(File var : file) {

name = var.getName().toLowerCase();

if( name.endsWith(".mp3")|| name.endsWith(".wav")) {

this.addMusicItem(var.getName() ,

var.getParentFile().getAbsolutePath());

}

}

}

}

/**

* table的行中添加音乐文件名称name,音乐文件路径path

* @param name

* @param path

*/

private void addMusicItem(String name, String path ) {

Vector rowData = new Vector();

rowData.add(name);

rowData.add(path);

//rowData.add(time);

DefaultTableModel tabMod= (DefaultTableModel) table.getModel();

tabMod.addRow(rowData);

}

}

音乐播放器Java课程设计报告

课程设计报告课程设计题目: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 https://www.doczj.com/doc/368578115.html,.*; public class MyMusicPlayer extends Thread implements MouseListener,ItemListener{ JFrame MainFrame=new JFrame("MyMusicPlayer"); //定义主窗体 JLabel songname=new JLabel(); //用标签 显示状态 JButton last=new JButton(); JButton play=new JButton();

java编写的简单的计算器程序

计算器 项目内容:编写一个Applet,模仿windows附件所带计算器的功能,可以帮助用户完成计算功能,具体如下图所示。 项目要求:使用图形的方式借助窗口、菜单、按钮等标准界面元素和鼠标操作,来帮助用户方便地向计算机系统发出命令,启动操作,并将系统运行的结果同样以图形的方式显示给用户,这样更加直观和生动; 1.Applet容器中组件的添加与设置,包括面板以及菜单的使用; 2.容器中组件的布局管理; 3.Java核心包中数组、数学计算类的使用; 4.异常的处理; 5.事件处理模型中的三类对象的使用: 1.Event-事件,用户对界面操作在java语言上的描述,以类的形式出现,例如键盘操作对应的事件类是KeyEvent。 2.Event Source-事件源,事件发生的场所,通常就是各个组件,例如按钮Button。 3.Event handler-事件处理者,接收事件对象并对其进行处理的对象。 6.程序中事件处理的流程:

1.计算流程的细化 参考代码: import .*;

import .*; import .*; import import import public class Calculator implements ActionListener { #############"); dd(panel); panel1 = new JPanel(); panel2 = new JPanel(); (new BorderLayout()); 键入计算的第一个数字。\n"); ("2. 单击“+”执行加、“-”执行减、“*”执行乘或“/”执行除。\n"); ("3. 键入计算的下一个数字。\n"); ("4. 输入所有剩余的运算符和数字。\n"); ("5. 单击“=”。\n"); aboutCal = new JMenuItem(" 关于计算器(A)"); (this);

音乐播放器代码大全

音乐播放器代码大全 autostart="true"中true或1表示自动播放,false或0表示手动播放 loop="true" 中的true或1表示重复播放,false或0表示只播放一次width= height= 中的数字分别表示播放器的宽度和高度=0表示隐藏播放器 EnableContextMenu="0" 禁右键 ShowStatusBar="1" (带显示文件播放信息) 1隐藏播放器(不循环) 代码: 2.隐藏播放器(循环播放) 代码: 3.黑色皮肤播放器 代码: 4.淡蓝色播放器 代码:

5.迷幻播放器 代码:

6.带菜单的播放器 代码: 7.深黄色带菜单播放器 代码: 8.灰色播放器 代码:

音乐播放器程序源代码及注释

音乐播放器程序源代码及注释: #include #define uchar unsigned char #define uint unsigned int sbit duan=P2^6; sbit key1=P3^2;//按key1可切换花样 sbit key2=P3^3;//按key2可切换歌曲 sbit fm=P2^4;//蜂鸣器连续的IO口 sbit P30=P3^0;//矩阵键盘的一列 uchar code huayang1[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe, 0xfd,0xfb,0xf7,0xef,0xdf,0xbf};//花样1 uchar code huayang2[]={0x7f,0xfe,0xbf,0xfd,0xdf,0xfb,0xef,0xf7, 0xef,0xfb,0xdf,0xfd,0xbf,0xfe};//花样2 uchar code huayang3[]={0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x0, 0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff}; char code huayang4[]={ 0x55,0xaa,0xcc,0x33,0x99,0x66,0x0f,0xf0}; uchar count1;//花样标志 uchar count2;//歌曲标志 uchar timeh,timel,i; //编程规则:字节高位是简谱,低位是持续时间, //代表多少个十六分音符 //1-7代表中央C调,8-E代表高八度,0代表停顿

Java音乐播放器源代码即结果显示

简单的音乐播放器一、程序代码: import java.io.File; import java.awt.BorderLayout; import java.awt.Button; import java.awt.Color; import java.awt.FileDialog; import java.awt.Frame; import java.awt.GridLayout; import https://www.doczj.com/doc/368578115.html,bel; import java.awt.List; import java.awt.Menu; import java.awt.MenuBar; import java.awt.MenuItem; import java.awt.MenuShortcut; import java.awt.Panel; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyEvent; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import javax.sound.sampled.AudioFormat; import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.DataLine; import javax.sound.sampled.SourceDataLine; public class Example extends Frame { private static final long serialVersionUID = 1L; boolean isStop = true;// 控制播放线程 boolean hasStop = true;// 播放线程状态

科学计算器程序Java代码

科学计算器程序Java代码

MC:清除独立内存里的数字 MR:读出独立内存数字 MS:将显示数字保存到独立内存,并取代内存中原有数字 M+:将显示数字向独立内存累加 (独立内存是一个临时寄放数字的存储器,方便计算) CE:纠错键(CLEAR ERROR).输入数字有错,按它可以重新输入 C:表示清零,将计算器恢复到开机状态 功能举例: 源程序如下: import java.awt.BorderLayout;

import javax.swing.JRadioButtonMenuItem; import javax.swing.JTextField; public class Calucator extends JFrame { private JTextField tf; private JPanel panel1, panel2, panel3, panel4; private JMenuBar myBar; private JMenu menu1, menu2, menu3; private JMenuItem editItem1, editItem2, help1, help2, help3; private JRadioButtonMenuItem seeItem1, seeItem2;//单选框 private JCheckBoxMenuItem seeItem3;//复选框 private ButtonGroup bgb; private String back; private boolean IfResult = true, flag = false;

基于java的音乐播放器的设计源代码+实验报告

主类M U S I C P L A Y E R类:import .*; public class MusicPlayer implements ActionListener, Serializable,ControllerListener { private static final long serialVersionUID = 1L; private JFrame frame = null; private JPanel controlPanel = null; private JButton btnPlay = null; private JButton btnPre = null; private JButton btnNext = null; private JScrollPane listPane = null; private JList list = null; private DefaultListModel listModel = null; private JMenuBar menubar = null; private JMenu menuFile = null, menuAbout = null, menuMode = null; private JMenuItem itemOpen, itemOpens, itemExit, itemAbout; private JRadioButtonMenuItem itemSingle, itemSequence ,itemRandom; private ListItem currentItem = null; private static Player player = null; private boolean isPause = false; private int mode; private int currentIndex; private ImageIcon iconPlay = new ImageIcon("d:\\"); private ImageIcon iconPre = new ImageIcon("d:\\"); private ImageIcon iconNext = new ImageIcon("d:\\"); private ImageIcon iconPause = new ImageIcon("d:\\"); public static void main(String[] args) { new MusicPlayer(); } public MusicPlayer() { init(); } public void init() { frame = new JFrame(); ("音乐播放器"); (400, 300); (false); (null); ; menubar = new JMenuBar(); menuFile = new JMenu("文件");

java编写简单计算器源代码

import javax.swing.*; import java.awt.event.*; import java.awt.*; import https://www.doczj.com/doc/368578115.html,ng.Math; class ring extends JFrame implements ActionListener { //定义成员变量: //JFrame frame;//定义一个窗口类; JTextField text;//定义一个文本框类; JLabel label;//定义一个标签类; JPanel p1,p2,p3,p4,p5,p6;//定义面板类; String s1,s,s2;//定义三个字符串变量; int count=0; JButton a1,a2,a3,a4,a5,a6,b1,b2,b3,b4,b5,b6,c1,c2,c3,c4,c5,c6,d1,d2,d3,d4 ,d5,d6; //ring的构造函数; ring() { this.setTitle("计算器"); // super("计算器"); JMenuBar menubar1=new JMenuBar();//新建菜单条; this.setJMenuBar(menubar1); JMenu menu1=new JMenu("编辑(E)"); JMenu menu2=new JMenu("查看(V)"); JMenu menu3=new JMenu("帮助(H)"); menubar1.add(menu1); menubar1.add(menu2); menubar1.add(menu3); JMenuItem item1=new JMenuItem("复制(c) ctrl+c"); JMenuItem item2=new JMenuItem("粘贴(p) ctrl+v"); JMenuItem item3=new JMenuItem("标准型(T)"); JMenuItem item4=new JMenuItem("科学型(s)"); JMenuItem item5=new JMenuItem("数字分组(I)"); JMenuItem item6=new JMenuItem("帮助主题(H)"); JMenuItem item7=new JMenuItem("关于计算机(A)"); menu1.add(item1); menu1.add(item2); menu2.add(item3); menu2.add(item4); menu2.add(item5); menu3.add(item6);

音乐播放器哪个好2

音乐播放器哪个好,国内四款音乐软件评测 在国内的音乐播放器市场上,也有所谓的“四大天王”,他们分别是千千静听、酷狗音乐、酷我音乐以及QQ音乐。四款软件经过自身各个版本的升级更新,在功能及用户体验上都有着长足的进步,那么这四款软件究竟谁才是王中王呢?今天笔者告诉你!本次有https://www.doczj.com/doc/368578115.html,专业音乐播放器点评网点评! (PS:参评的软件均以国内为主,外国软件不予考虑) 一、参评软件 各软件的下载地址集合 千千静听----------------酷我音乐----------------QQ音乐 -------------------酷狗音乐 二、评测看点: 一款好的音乐播放软件,应具备以下诸多特点: 1、友好的安装过程(主要是强制安装以及一些插件的问题) 2、靓丽的界面及丰富的主题皮肤 3、软件操作要简便,新手容易上手 4、音乐库的更新一定要跟得上当前的音乐潮流 5、歌曲搜索功能要到位 6、最好能自带歌曲下载模块 7、音乐源的品质要满足各层次用户的需求 8、软件主体的内存占用比例要适中

上述都是一些最基本的特色功能,还有一些笔者将会在以下的评测环节一一进行讲解 三、评测部分 1、软件的主体安装部分 首先来看下几款软件在进行软件安装环节所表现出的不同风格特点,通过对比我们可以简单的看出,所谓的绿色、无广告音乐播放器是否是“徒有其名” 千千静听在安装过程中会默认安装“百度工具栏”这一浏览器插件,安装结束后还有首页修改及推荐浏览器安装,如若都不谨慎选择,还真让它蒙混过关去了 图1、千千静听安装中的插件

图2、注意最后安装结束的内容 酷我音乐盒在安装中也有百度工具条的插件,真是无孔不入啊,虽然笔者并不排斥百度工具栏这一浏览器插件,但老出现在一些安装软件中,着实让人看了十分厌烦

安卓音乐播放器开发,含源代码

基于an droid平台的音乐播放器开发 实验报告 学生姓名:_______ 温从林 _________________ 学号: ___________________________________ 班级:计自1201 _____________ 第一章引言 1.1项目背景 当今社会的生活节奏越来越快,人们对手机的要求也越来越高,由于手机市场发展迅速,使得手机操作系统也出现了不同各类,现在的市场上主要有三个手机操作系统,Win dowsmobile,symbia n,以及谷歌的An droid操作系统,其中占有开放源代码优势的An droid系统有最大的发展前景。那么能否在手机上拥有自己编写的个性音乐播放器呢?能的,谷歌An droid系统就能做到。本文的音乐播放器就是基于谷歌An droid手机平台的播放器。 An droid :是谷歌于2007年公布的开放式源代码手机系统,它的开放性就优于其它封闭式的手机系统,因此,任何人都可能根据自己的喜好将手机系统中的所有功能重新编写。这使得越来越多的人关注这个操作系统。本次作品音乐播放器就是基于An droid平台的。 1.2编写目的 现今社会生活紧张,而欣赏音乐是其中最好的舒缓压力的方式之一,本项目的目的是开发一个可以播放主流音乐文件格式的播放器,本设计实现的主要功能是播放Mp3 Wav多种格式的音乐文件,并且能够控制播放,暂停,停止,播放列等基本播放控制功能,界面简明,操作简单。

本项目是一款基于An droid手机平台的音乐播放器,使An droid手机拥有个性的 多媒体播放器,使手机显得更生动灵活化,与人们更为接近,让手机主人随时随地处于音乐视频的旋律之中。使人们的生活更加多样化。也使设计者更加熟练An droid的技术和其它在市场上的特点。 1.3开发环境 Eclipse、An droid SDK 320 第二章系统需求分析 2.1功能需求(用例图分析) 根据项目的目标,我们可获得项目系统的基本需求,以下从不同角度来描述系统的需求,并且使用用例图来描述,系统的功能需求,我们分成四部分来概括,即播放器的基本控制需要,播放列表管理需求,播放器友好性需求和播放器扩展卡需求。以下分别描述: 2.1.1播放器的用例图 假设安装了音乐播放器的用户是系统的主要设计对象,其拥有以下操作, 启动软件、播放音乐、暂停播放、停止播放、退出软件,其用例图如下 图2.1 播放器基本用例图 2.1.2用例分析

音乐播放器Java课程设计报告

课程设计报告课程设计题目: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 ) :实现对按钮的监听 public void mouseClicked(MouseEvent e) public void itemStateChanged(ItemEvent arg0) :返回一个AudioClip 对象

3、程序流程图 * 出现界面 * 选择播放歌 曲 4、程序清单 import java.awt.*; import javax.swi ng.*; import java.applet.*; import java.awt.eve nt.* import java .n et.*; public class MyMusicPIayer exte nds Thread impleme nts MouseListe ner,ltemListe ner{ JFrame Mai nF rame =new JFrame( "MyMusicPlayer" ); // 定义主窗体 JLabel songname =new JLabel(); //用标签显示状态 JButton last =new JButto n(); JButt on play =new JButt on();

JAVA编写的计算器源代码

package jsq; import java.awt.Color; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowEvent; import java.awt.event.WindowListener; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JMenuItem; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JTextField; import javax.swing.UIManager; public class Test implements ActionListener { /** * */ JFrame f = new JFrame(); JTextField tf = new JTextField("0."); JMenuBar bar=new JMenuBar(); JMenu menuEdit=new JMenu("编辑(E)"); JMenu menuView=new JMenu("查看(V)"); JMenu menuHelp=new JMenu("帮助(H)"); JMenuItem menuEditCopy=new JMenuItem("复制(C)"); JMenuItem menuEditPaste=new JMenuItem("粘贴(V)"); JMenuItem menuHelpAbout = new JMenuItem("关于计算器(A)"); JPanel panel0 = new JPanel(); JPanel panel2 = new JPanel(); JPanel panel = new JPanel(); JPanel panel3 = new JPanel(); JPanel panel4 = new JPanel(); JPanel panel5 = new JPanel();

音乐播放器的详细设计

音乐播放器详细设计 1.引言 随着社会的快速发展,现今社会生活紧张,而欣赏音乐是其中最好的舒缓压力的方式之一,音乐成了我们生活工作中的一个重要的部分。而3G时代的到来,手 机移动应用越来越普遍。此文档就是为了能更好地设计出一个基于an droid系统的音乐播放器而编写的。 1?1编写目的 为软件的开发者能更好的理解和明确软件开发的详细过程,安排项目与进度、组织软件开发与测试,撰写本文档。本文档供项目组成员,软件开发人员参考。 1.2项目背景 本项目由李雪梅、杨挺等人提出,由本组成员联合开发,实现播放现今流行的音乐MP3等文本格式。 该软件是基于An droid系统的音乐播放软件,并能够与其他音乐播放软件兼容。1?3参考资料 [1] 彭龚重庆大学出版社《软件工程》“软件计划与可行性分析” [2] 靳岩、姚尚明人民邮电出版社《Android开发入门与实践》 [3] 可行性分析 [4] 《音乐播放器需求分析书》 [5] 《音乐播放器总体设计说明书》

实施计划:

在技术方面,编程知识比较缺乏,对有些与项目相关的软件不熟悉,需进行人员的技术培训(自学为主),技术难点是数据库的构架和软件功能的设计。 2.总体设计 2.1项目目的 本项目的目的是开发一个可以播放主流的音乐文本格式的 播放器。设计的主要实现功能是播放MP3等格式的音乐文件,并且能控制播放,暂停,停止,音量控制,选择上一曲,选择下一曲,更改皮肤,歌曲列表文件的管理操作,在线播放,读取存储卡播放等多种播放控制,界面简明,操作简单。 软件系统检测到错误行为时,报告错误,并提示处理操作。 2.2软件运行环境 硬件:An droid操作系统手机 系统软件:An droid 2.2 -- 4.0版本 支撑软件:Eclipse 7.5、ADT 1.5

基于java的音乐播放器课程设计报告

Java课程设计报告题目:java音乐播放器 姓名 学号 院系 班级 专业 任课教师

1.设计内容及要求 能够实现简单的音乐播放器功能,如:打开本地文件,播放,暂停,停止,背景播放,单曲循环等等,界面充实,交互友好,可以添加 多首歌曲目录 一个简单的基于java语言的音乐播放器,菜单栏:文件,播放控制和播放列表,文件菜单包含打开、循环和退出三个菜单项;播放控 制菜单包含播放、暂停和停止三个菜单项,播放列表菜单则是当向里面 添加歌曲之后才能够查看到里面所包含的歌曲目录。当播放歌曲时,可 以调节音量大小或者设置是否静音;可以查看当前播放音乐的相关属 性,如:歌曲名,歌手,发布时间,所属专辑等等。 2.需求分析 1、时间跟踪条:根据歌曲播放的进度,控制条自动进行追踪,用户可以 随时了解歌曲的播放进度 2、音量控制键:可以点击该控键进行音量大小的调节以及是否静音的设 置 3、属性查询键:通过该控键,用户可以查看当前播放音乐的相属性,获 取关于该歌曲的用户所需的相关信息。 4、菜单栏: ①文件: 打开:用户通过该菜单项打开本地音乐文件,听任何用户想 听的歌曲 循环:通过循环设置,用户可以重复的播放一首喜欢的歌曲 退出:退出音乐播放器,及退出该程序

②播放控制: 播放:选择歌曲之后,通过点击播放菜单项启动播放器播放音乐 暂停:暂停当前正在播放的音乐 停止:停止当前正在播放的音乐 ③播放列表:当用户通过文件打开本地音乐文件后,及相当于在 播放列表里面添加了歌曲,及形成相应的歌曲播放目录 3.总体设计 结合需求分析来看,整个设计包含了简单的菜单栏,根据用户需求设置了三个简单的实现基本操作的菜单,分别是:文件,播放控制, 播放列表;根据具体的操作每个菜单还包含了相应的菜单项,文件:打 开,循环,退出;播放控制:播放,暂停,停止;播放列表则没有菜单 项,该菜单就是用来显示或者查看相应的歌曲目录的。 该音乐播放器设置了两个窗口,运行程序时打开的初始化欢迎界面,用户可以根据自己的需求进行菜单栏里面的基本操作和相应的设 置,当用户添加或者打开音乐播放文件的时候,程序将会显示出第二个 音乐文件播放窗口,与此同时,第一个初始化窗口将会自动隐藏,在音 乐播放窗口里面用户可以进行相关的音乐播放的控制操作。 当用户进入音乐播放窗口时,该窗口有几个快捷控制的控键:时间追踪轴:可以实现播放的前进、后退功能,根据用户需求调节音乐的 播放进度等;音量控制:设置静音,打开扬声器或者调节音量大小;播 放列表:查看当前播放音乐的相关属性。

java计算器源代码(仿win7)

java计算器源代码(仿win7) import java.awt.*; import javax.swing.*; import java.awt.event.*; class Cal extends JFrame implements ActionListener,MouseListener{ JMenuBar menubar; JMenu menu_check,menu_edit,menu_help; JMenuItem menuitem_science,menuitem_check,menuitem_exit,menuitem_copy, menuitem_paste,menuitem1_copy,menuitem1_paste,menuitem_chelp,menuitem_about; JCheckBoxMenuItem menuitem_standard; JTextField ta1; int x,result2; double op1,op2,opall; private boolean end=false,flag=false,add=false,sub=false,cheng=false,chu=false,flagop2=false; JButton b_mc,b_mr,b_ms,b_mjia,b_mjian,b_tui,b_ce,b_c,b_jj, b_dui,b_7,b_8,b_9,b_chu,b_baifenhao,b_4,b_5,b_6,b_cheng, b_daoshu,b_1,b_2,b_3,b_jian,b_0,b_dian,b_jia,b_dengyu; JPanel p_all,p_button1,p_button2,p_txt,p1,p2,p3,p4,p5; private String str,resultstr;

13个常见音乐播放器大评比

普通播放器 1:Windows Media Player 7(系统自带版本) 这个是非常常用的播放器,一般网吧,课室都用这个 优点:系统自带,无需安装。新版本是某些随身听播放器传输视频或者音频必须得软件。新版本在声音上有一定改善。 缺点:声音不好听!含糊不清。对各种格式支持非常不好!ape 和flac这类牛B哄哄的格式别指望能播放的了。打开速度慢,系统资源占用多,缺点太多,就不一一赘述了。 音质指数:C 实用指数:C 2:搜狗音乐盒、酷我音乐盒、QQ音乐、青苹果音乐播放器、酷狗音乐

[attach]2666731[/attach] 这些都是网络播放器,主要功能是让大家能在播放器内直接选择最新最流行的音乐试听 优点:内置音乐排行榜,点选热门歌曲直接播放。 缺点:声音质量差,不支持无损格式,转换,修改文件信息等功能缺乏,只适合做试听之用。 音质指数:D 实用指数:D 3:千千静听 [attach]2666734[/attach] 非常大众化的一个播放软件 优点:使用方便,修改和编辑文件信息效率高,对各种格式的支持和转换都很好,界面也丰富多彩。官方版本自带歌词速配,非常适合想偷懒又想看歌词的人。声音还算过得去。软件还算小巧,占用小。 缺点:千千的声音对追求音质的人来说太过马虎,特别突出的问题是对DTS文件的播放,出来的效果可以用非常差来形容。默认的配置使用了均衡器(两边高中间低),可以说是扭曲了声音。

音质指数:B+ 实用指数:A 4:暴风Winamp 曾经风靡一时的播放器 优点:界面华丽(默认皮肤来算,如果会弄的话,很多播放器的皮肤都可以很炫),播放mp3声音还不错。功能随着版本更新越来越多。 缺点:新版本不支持ape,flac的播放,需要找插件(麻烦)。随着版本不断更新,软件越来越臃肿,无用功能太多。 音质指数:B+ 实用指数:B 5:jetaudio

音乐播放器设计文档

生产实习报告 题目:音乐播放器 学生姓名:张凡 学号: 201220220123 班级: 1222201 专业:数字媒体技术 指导教师:张金 2015年08 月08日

目录 一、引言 (3) 1.1 项目背景 (3) 1.2 项目研究的目的 (4) 1.3 安卓简介 (4) 二.功能分析 (5) 2.1 功能需求分析 (5) 2.2 系统性能需求 (6) 2.3 运行环境需求 (6) 三.程序详细设计 (6) 3.1 主界面的设计 (6) 3.2 播放界面设计 (11) 3.3 其他功能 (14) 四.调试与运行 (18) 4.1 调试 (18) 4.2 运行结果 (19) 五.总结 (21)

一、引言 1.1 项目背景 当今社会的生活节奏越来越快,人们对手机的要求也越来越高,由于手机市场发展迅速,使得手机操作系统也出现了不同各类,现在的市场上主要有三个手机操作系统,symbian,Windows mobile,以及谷歌的Android操作系统,其中占有开放源代码优势的Android系统有最大的发展前景。那么能否在手机上拥有自己编写的个性音乐播放器呢?答案是:肯定的,谷歌Android系统就能做到。本文的音乐播放器就是基于谷歌Android手机平台的播放器。 随着计算机的广泛运用,手机市场的迅速发展,各种音频视频资源也在网上广为流传,这些资源看似平常,但已经渐渐成为人们生活中必不可少的一部分了。于是各种手机播放器也紧跟着发展起来,但是很多播放器一味追求外观花哨,功能庞大,对用户的手机造成了很多资源浪费,比如CPU,内存等的占用率过高,在用户需要多任务操作时,受到了不小的影响,带来了许多不便,而对于大多数普通用户,许多功能用不上,形同虚设。针对以上各种弊端,选择了开发多语种的音频视频播放器,将各种性能优化,继承播放器的常用功能,满足一般用户(如听歌,看电影)的需求,除了能播放常见格式的语音视频文件,高级功能:还能播放RMVB格式的视频文件。此外,还能支持中文、英文等语言界面。

音乐播放器java源代码

package com.ding.player; import java.io.File; import java.io.IOException; import javax.sound.sampled.AudioFormat; import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.DataLine; import javax.sound.sampled.SourceDataLine; public class Player { private String path;//文件路径 private String name;//文件名称 private AudioFormat audioFormat;//播放格式 private AudioInputStream audioInputStream;//音乐播放输入流 private SourceDataLine sourceDataLine;// 播放设备 private boolean isStop = false;// 播放停止标志 /** * 创建对象时需要传入播放路径及文件名称 * @param path * @param name */ public Player(String path ,String name) { this.path = path; https://www.doczj.com/doc/368578115.html, = name; } /** * 播放音乐 */ public void play() { File file = new File(path + name); try { //获取音乐播放流 audioInputStream = AudioSystem.getAudioInputStream(file); //获取播放格式 audioFormat = audioInputStream.getFormat(); /*System.out.println("取样率:"+ audioFormat.getSampleRate());

java简单计算器源代码

j a v a简单计算器源代码集团企业公司编码:(LL3698-KKI1269-TM2483-LUI12689-ITT289-

简单计算器代码packagecalcultorthree; /** *本例实现了简单计算器代码,具备加减乘除和正弦功能,旨在抱砖引玉。熟悉java的同学,可以在此基础上实现更复杂的功能。 *@authorFjsh */ publicclassCalcultorThree{ //新建对象,在构造函数中进行初始化 JFrameframe;//新建窗体对象 JButtonbuttonzero,buttondot,buttonequal;//新建按钮“0”“.”“=”JButtonbuttonplus,buttonminus,buttonmultiple,buttondevision, buttonsin,buttontozero;//新建按钮“+”“-”“*”“/”“sin”和归零按钮JButtonbuttonone,buttontwo,buttonthree,buttonfour,buttonfive,buttonsix, buttonseven,buttoneight,buttonnine;//新建数字按钮 “0”“1”“2”“3”“4”“5”“6”“7”“8”“9” JPanelpanelwest,panelcenter,paneleast;//新建三个面板 TextFieldtf;//新建文本区域对象 publicCalcultorThree(){ //初始化对象 tf=newTextField(30);//构造空文本字段,字符宽度为30 frame=newJFrame("CalculatorThree");//构造窗体对象,名称为“CalculatorThree”

51单片机蜂鸣器播放音乐代码

/*生日快乐歌曲*/ #include <> #define uint unsigned int #define uchar unsigned char sbit beep = P1^5; uchar code SONG_TONE[]={212,212,190,212,159,169,212,212,190,212,142,159, 212,212,106,126,159,169,190,119,119,126,159,142,159,0}; uchar code SONG_LONG[]={9,3,12,12,12,24,9,3,12,12,12,24, 9,3,12,12,12,12,12,9,3,12,12,12,24,0}; //延时 void DelayMS(uint x) { uchar t; while(x--) for(t=0;t<120;t++); } void PlayMusic() { uint i=0,j,k; while(SONG_LONG[i]!=0||SONG_TONE[i]!=0) { //播放各个音符,SONG_LONG 为拍子长度 for(j=0;j // 这是单片机音乐代码生成器生成的代码 #define uchar unsigned char sbit beepIO=P1^5; // 输出为可以修改成其它 IO 口uchar m,n;

相关主题
文本预览
相关文档 最新文档