Мне нужна помощь в воспроизведении музыки в моем коде Java.Прямо сейчас я использую метод mouseClicked
в моем JApplet
, и каждый раз, когда я нажимаю на определенную локацию, музыка из файла wav должна воспроизводиться.Но когда я запускаю апплет, будет воспроизводиться только первый объект, на который я нажму, после того, как ничего не будет воспроизведено, и я не смогу выйти из апплета (я должен принудительно выйти)
Я уже пытался использовать clip.stop()
метод после того, как он воспроизводится, и после его использования звук не воспроизводится вообще.
это мой код в моем классе для воспроизведения музыки, который прикреплен к моему JApplet.
public void playMusic()
{
try{
File file = new File("island_music_x.wav");
Clip clip = AudioSystem.getClip();
clip.open(AudioSystem.getAudioInputStream(file));
clip.start();
Thread.sleep(clip.getMicrosecondLength());
}
catch(Exception e)
{
System.err.println(e.getMessage());
}
}
это код объекта, который должен быть нажат в моем апплете для воспроизведения музыки.
xpos5 = me.getX();
ypos5 = me.getY();
if
(xpos5 > rect5xco && xpos5 < rect5xco+rect5width && ypos5 >
rect5yco && ypos5 < rect5yco+rect5height)
rect5Clicked = true;
else
rect5Clicked = false;
когда для него установлено значение true, у меня есть код для воспроизведения музыки
if
(rect5Clicked == true)
{
try{
m5.playMusic5();}
catch (Exception e)
{}
}
Когда я нажимаю на объект, предполагается, что музыка воспроизводится, что происходит, однако;Я должен иметь возможность нажимать на другие объекты после первого и играть музыку.Но музыка играет только в первый раз.Я также не могу выйти из окна просмотра апплетов.Любая помощь будет здорово, спасибо !!