5

在 Java 中,是否有任何函数可以以给定的频率和持续时间发出(主板)哔声?在我使用过的许多语言中,你可以;哔声可用于指示某些类型的错误,也可用于轻松生成音乐。

发出哔声的标准方法是打印 BEEP 字符(\007 或其他内容)或使用 Toolkit.beep(),这两者都不允许您指定频率和持续时间。

我正在考虑实现一个本地方法,但应该有一个库来完成这个简单的任务。我正在寻找类似的东西SomeClass.beep(500,1000);

我的应用程序将仅在 Windows 上受支持。

谢谢。

4

3 回答 3

4

在此处查看此链接:

http://mindprod.com/products2.html#SPEAKER

它包含用于实现所需功能的 Java 源代码和 DLL。它在给定的持续时间内以特定频率从内部 PC 扬声器发出各种声音。查看 Auld Lang Syne 示例:) 它使用 JNI 通过包含的 DLL 来实现这一点。

顺便说一句..我不相信使用该工具包是可靠的。它没有在我的电脑上产生输出。

于 2009-03-27T23:27:32.300 回答
3

如果你 100% 确定你只会支持 windows,你总是可以使用JNA调用相应的os 方法

于 2009-03-27T23:03:47.817 回答
1

图书馆algo4j也可以这样做。

https://github.com/ice1000/algo4j/

请参阅此文件:

https://github.com/ice1000/algo4j/blob/master/src/test/kotlin/org/algo4j/win/WinAPITest.kt

于 2017-04-26T19:49:20.767 回答