Java编写PC喇叭发声程序

有时软件需要发出声音来提醒用户,一般是使用Toolkit.getDefaultToolkit().beep(),但只会使音箱发声,没有音箱的PC仍然没有效果。

 

如果想要电脑主板上的喇叭发出声音可以使用jnative,它是开源的,windows和linux下都能用。

 

首先到sourceforge下载jnative.jar,放到工程lib目录下并Add to Build Path,就可以了。

 

附测试程序

public class Beep {

	public static JNative getBeepJnative() throws NativeException {
		return new JNative("kernel32.dll", "Beep");
	}

	public static void beep(JNative jn, int freq, int dwruration)
			throws NativeException, IllegalAccessException {
		jn.setRetVal(Type.VOID);
		jn.setParameter(0, freq);
		jn.setParameter(1, dwruration);
		jn.invoke();
	}

	public static void main(String[] args) throws NativeException,
			IllegalAccessException {
		// 控制声音频率
		int freqs[] = { 523, 587, 659, 698, 784, 880, 998, 1047, 998, 880, 784,
				698, 659, 587, 523 };
		JNative jn = Beep.getBeepJnative();
		// 控制声音时长
		int dwruration = 300;
		for (int freq : freqs) {
			Beep.beep(jn, freq, dwruration);
		}
	}
}

 

你可能感兴趣的:(java,windows,linux,软件测试)