0

我正在开发一个初学者 java 项目,我希望在您打开 java 小程序时播放正确的声音。我在“C:\Program Files (x86)\BlueJ”中放了一个 .au 文件——这是 bluej exe 所在的位置(我认为这是文件的正确位置,就像我在代码中调用它的方式一样)。

import java.awt.*;
import java.applet.*;
import javax.swing.*;
import java.awt.event.*;
import java.awt.event.KeyListener;
import java.awt.event.KeyEvent;


public class guitarGame extends Applet implements ActionListener, KeyListener {
AudioClip brainStew; 
Timer timer = new Timer (1000, this);

public void init(){
    brainStew = getAudioClip(getDocumentBase(), "green day - brain stew.au");
    brainStew.play();

}

public void keyReleased(KeyEvent ae){}

public void keyPressed(KeyEvent ae){

    repaint();
}

public void keyTyped(KeyEvent ae){}

public void actionPerformed (ActionEvent ae){}
public void paint (Graphics g)
{   
}
}

任何帮助将不胜感激,谢谢。

4

1 回答 1

1

我已经放入了一个 .au 文件"C:\Program Files (x86)\BlueJ"——这是 bluej exe 所在的位置(我认为这是文件的正确位置,就像我在代码中调用它的方式一样)。

你想错了。您的“程序文件”目录不能被提供小程序页面的服务器访问,也不能被小程序访问。

getAudioClip(getDocumentBase(), "green day - brain stew.au");

这将导致 JVM 在与 HTML 相同的目录中寻找资源。

虽然方法调用可能会正确地对空格字符进行 URL 编码,但也可能不会,因此这将更加可靠。

getAudioClip(getDocumentBase(), "green%20day%20-%20brain%20stew.au");
于 2013-04-30T02:37:27.800 回答