快速业务通道

JBuilder制作音频播放程序 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-23

JBuilder制作音频播放程序

时间:2010-09-22

Java是当今世界上非常流行的一种编程语言。它是由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的,是一种为Internet发展而突破用户端机器环境和CPU结构、写一次即可在任何机器上执行(Write Once,Run Anywhere)的语言。

介绍完Java的特性与优势后,我将开始介绍如何制作音频播放程序。Java中有许多可以制作音频播放的包和类,包括java.applet.AudioClip、com.sun.media.sound.JavaSoundAudioClip和javax.sound.midi.spi&javaw.sound.sampled.spi等,其中java.applet.AudioClip是从JDK1.0就存在的一个接口,其余的多个类是对这个接口的实现及丰富其功能。

下面,我将带领大家利用com.sun.media.sound中的JavaSoundAudioClip类制作一个简单的音频播放器小程序。

我采用的是Borland公司的JBuilder,这是一个大型的Java集成开发环境。

我们共创建4个类,如下表:

类名 MyFrame AudioPlay GifPanel Test
功能 界面GUI 播放音频文件 存放gif图片的面板 测试类

1.生成Application的GUI

首先,利用JBuilder的Wizard自动生成一个带有菜单栏的Application,然后在Frame中添加控件。如下所示:

类型 JList JButton JButton JButton JButton JFileChooser
名称 jList1 jBtnBack jBtnPlay jBtnStop jBtnForward fileChooser
功能 播放列表 后退 播放 停止 前进 打开文件对话框

在按钮的下面添加jList作为播放列表,为了避免画面的单调,我们在右边添加一幅gif,为了便于对gif进行管理,我们为它制作了一个面板,构成GifPanel类。完成后的界面如下图所示:

JBuilder制作音频播放程序 - 编程入门网

JBuilder制作音频播放程序(2)

时间:2010-09-22

2.构造AudioPlay类--音频播放wav,注意异常处理

需要注意的是,当播放时,界面上的各个按钮应当仍然可以对用户的操作进行事件响应,所以至少需要两个线程:一个控制歌曲的播放,另外一个对用户事件进行响应。因此我们的AudioPlay类需要实现Runable接口,以使用多线程技术。根据JDK的解释-JDK1.4.0,任何需要由线程执行的实例都应当实现Runable接口,而且由于我们只需要重写run()方法和stop()方法,并给start()方法多态化,所以我们选择实现Runable接口,这样就可以不需要继承Thread类而使用Thread类的实例来运行了。

package myplayer; import com.sun.media.sound.JavaSoundAudioClip; import java.io.*; /** * <p>Title: 音频播放器</p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2003</p> * <p>Company: </p> * @author 放飞网 * @version 1.0 */ public class AudioPlay implements Runnable {  private JavaSoundAudioClip locate, warning;  protected boolean threadExit;  protected boolean stopped;  protected boolean playing;  Thread playerThread;  public AudioPlay() {  }  public void start(File f) {   playing = true;   stopped = false;   try {    FileInputStream ff = new FileInputStream(f);    locate =

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号