Как сделать шум на динамике ПК с помощью Java - PullRequest
19 голосов
/ 06 ноября 2008

Я хочу предупредить пользователя в приложении Swing об определенных событиях со старым звуковым сигналом динамика ПК, поскольку не на каждом ПК есть звуковая карта с подключенным динамиком. (По крайней мере, на моем рабочем компьютере нет динамика, по причине. :-) Как я могу это сделать?

UPDATE: java.awt.Toolkit.getDefaultToolkit (). beep () обычно генерирует звук на звуковой карте. Используется только динамик, если нет активной звуковой карты. Печать значения ASCII 7 работает только в том случае, если приложение запускается в терминале, чего обычно не имеет приложение Swing. Так что вопрос все еще открыт.

Ответы [ 6 ]

21 голосов
/ 06 ноября 2008

Toolkit.getDefaultToolkit().beep();

7 голосов
/ 06 ноября 2008

Попробуйте это:

java.awt.Toolkit.getDefaultToolkit().beep();  

Это сработало для меня, хотя я не уверен, был ли это звуковой сигнал динамика ПК или какой-то другой сигнал, генерируемый ОС.

4 голосов
/ 28 марта 2009

Я где-то читал, что вам нужно использовать C / C ++ dll и соединить его с JNI, чтобы это работало, .. ссылка отключена

Хорошо, я нашел то, что вы ищете

http://pyx4j.com/pyx4j-native/index.html

he pyx4j-native Проект представляет собой набор java-оболочек для таких функций Windows, как time и beep . Теперь работает только на Windows.

NativeThreadDump - отправка события CtrlBreak текущему процессу

Beep - издает звук с помощью динамика ПК

FileUtil - Доступ и изменение времени создания файла. Используется в com.pyx4j.log.RollingFileAppender

NativeTimer - Системный счетчик производительности с высоким разрешением, используемый до Java 5

3 голосов
/ 08 октября 2010

Кроме звукового сигнала, который вы можете попробовать JFugue .

JFugue - это Java API с открытым исходным кодом для программирования музыки без сложностей MIDI.

2 голосов
/ 06 ноября 2008

ASCII значение 7 является звуковым сигналом. Так что просто напечатайте этот символ.

0 голосов
/ 08 февраля 2016
    {
     If (whatever you named the file) = true
     Then
     Process.Start ("C:\Windows\Media\{whatever you named the file})
     }

Я использую это в C #. Для меня уже поздно, что код не совсем точен, прежде чем люди раскроют этот пост. Поместите директорию записи, чтобы назвать папку и объявить ее местоположением по умолчанию. Переместите выбранный вами звук в эту папку, и он будет воспроизводить звуковой сигнал. Установите таймер в Java для зацикливания звука каждые 2 секунды, чтобы привлечь внимание людей. Надеюсь, это поможет, когда я учусь сам!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...