当前位置: 技术问答>java相关
请问application能播放音乐么?
来源: 互联网 发布时间:2017-03-11
本文导语: 我曾经在applet里播放过,用的是applet的AudioClip类. 在applet里,我实例化的语句是: AudioClip a=getAudioClip(getDocumentBase(),"330.au"); 可在一个application里这样就不行了,请问我该怎么的到一个AudioClip的实例呢. | ...
我曾经在applet里播放过,用的是applet的AudioClip类.
在applet里,我实例化的语句是:
AudioClip a=getAudioClip(getDocumentBase(),"330.au");
可在一个application里这样就不行了,请问我该怎么的到一个AudioClip的实例呢.
在applet里,我实例化的语句是:
AudioClip a=getAudioClip(getDocumentBase(),"330.au");
可在一个application里这样就不行了,请问我该怎么的到一个AudioClip的实例呢.
|
computersim(古今万卷无永日):
不行的,newAudioClip()只能在applet里声明.
如果在application里声明会报错的.
我也很关心这个问题,可确实没见过很好的答案,我见一本书上说过:
"在applet里播放音频有两种方法,一种事applet自带的...
另一种是AudioClip,前者不能在application里播放音频...."
看大意好像是说AudioClip可以实现,可后面就再没提过这方面的东西,哎
另外查过些资料,都是在讲applet里如何如何,可那是大家都知道了的问题,
可不知道的,还是不知道.
不行的,newAudioClip()只能在applet里声明.
如果在application里声明会报错的.
我也很关心这个问题,可确实没见过很好的答案,我见一本书上说过:
"在applet里播放音频有两种方法,一种事applet自带的...
另一种是AudioClip,前者不能在application里播放音频...."
看大意好像是说AudioClip可以实现,可后面就再没提过这方面的东西,哎
另外查过些资料,都是在讲applet里如何如何,可那是大家都知道了的问题,
可不知道的,还是不知道.
|
把声名:java.applet.AudioClip clip 放到函数体外面,也就是说把clip做为类的一个成员,再试试?
|
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.net.*;
import java.applet.*;
class Test extends Frame{
Test(){
super("test");
try
{
String waveFileName = null;
URL url = new URL("file:///" + waveFileName);
java.applet.AudioClip clip = java.applet.Applet.newAudioClip(url);
}
catch(Exception e)
{}
setSize(40,40);
}
public static void main(String args[]){
try{
Test gf=new Test();
}
catch(Exception e){
System.out.println(e.getMessage()+"");
}
}
}
呵呵。关键要理解newAudioClip()是个静态方法。以及他的参数是url地址
不过建议大家还使用JMF技术来实现。
import java.awt.event.*;
import java.io.*;
import java.net.*;
import java.applet.*;
class Test extends Frame{
Test(){
super("test");
try
{
String waveFileName = null;
URL url = new URL("file:///" + waveFileName);
java.applet.AudioClip clip = java.applet.Applet.newAudioClip(url);
}
catch(Exception e)
{}
setSize(40,40);
}
public static void main(String args[]){
try{
Test gf=new Test();
}
catch(Exception e){
System.out.println(e.getMessage()+"");
}
}
}
呵呵。关键要理解newAudioClip()是个静态方法。以及他的参数是url地址
不过建议大家还使用JMF技术来实现。