我在JAVA编程中为按钮加了音效,但是实现的效果却是很好,请前辈们帮帮我,下面是代码,和详细情况
我为音效新启了一个线程,虽然实现了鼠标滑过产生音效这一功能,但效果不好,反应太不灵敏了,有时声音放不完就结束,有时没反应,有时把鼠标放上去一段时间才有声音,但只要慢慢的把...
我为音效新启了一个线程,虽然实现了鼠标滑过产生音效这一功能,但效果不好,反应太不灵敏了,有时声音放不完就结束,有时没反应,有时把鼠标放上去一段时间才有声音,但只要慢慢的把鼠标放在按钮上就能正常播放声音,请问这是怎么回事,能不能用缓冲池解决,还是根本没有解决方法,是JAVA本身问题。下面我声音线程的代码。
package one;
import java.applet.*;
import java.net.URL;
import java.io.*;
public class soundThread implements Runnable{
AudioClip beijing;
File file999;
URL url999;
File file100;
public soundThread()
{
file999=new File("b1.wav");
try
{
url999=file999.toURL();
}
catch (Exception e)
{
}
beijing=Applet.newAudioClip(url999);
//kaishi=Applet.newAudioClip(url999);
}
public void play(int m)
{
switch(m)
{
case 1: beijing.play();
break;
}
}
public void stop(int m)
{
switch(m)
{
case 1: beijing.stop();
break;}
}
public void run() {
// TODO Auto-generated method stub
play(1);
}
}
我在按钮上启动线程 展开
package one;
import java.applet.*;
import java.net.URL;
import java.io.*;
public class soundThread implements Runnable{
AudioClip beijing;
File file999;
URL url999;
File file100;
public soundThread()
{
file999=new File("b1.wav");
try
{
url999=file999.toURL();
}
catch (Exception e)
{
}
beijing=Applet.newAudioClip(url999);
//kaishi=Applet.newAudioClip(url999);
}
public void play(int m)
{
switch(m)
{
case 1: beijing.play();
break;
}
}
public void stop(int m)
{
switch(m)
{
case 1: beijing.stop();
break;}
}
public void run() {
// TODO Auto-generated method stub
play(1);
}
}
我在按钮上启动线程 展开
1个回答
2013-08-14
展开全部
不好意思 由于时间关系 我没看你的代码 首先凭感觉 纠正下 为音效新起线程是不好的
现在提供个思路
设置个布尔变量
有这个变量控制音乐是否开启
每一次循环都检测这个变量
当鼠标划过时开启变量
当音乐结束关闭变量。。
思路也许不是最好的。。见谅。忽忽
现在提供个思路
设置个布尔变量
有这个变量控制音乐是否开启
每一次循环都检测这个变量
当鼠标划过时开启变量
当音乐结束关闭变量。。
思路也许不是最好的。。见谅。忽忽
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询