Как подать разные звуковые сигналы для JOptionPane?
Как я могу генерировать разные звуковые сигналы для разных типов сообщений (например, предупреждение, информация, вопрос), используя JOptionPane в Java. Как и в ОС Windows, для каждого сообщения, которое появляется пользователю, разный звуковой сигнал. В настоящее время я использую следующие сигналы для генерации звукового сигнала, но каждый раз он звучит одинаково.
Toolkit.getDefaultToolkit().beep();
JJOptionPane.showMessageDialog( myFrame, "Message", "Title", JOptionPane.INFORMATION_MESSAGE );
Я хочу другой звуковой сигнал для предупреждения, информационного сообщения и вопроса. Есть ли способ сделать это?
1 ответ
beep выдает запрос базовой операционной системе на передачу звукового сигнала. На некоторых платформах, таких как Windows, воспроизводится "звук по умолчанию".
Вместо того, чтобы пытаться взаимодействовать с конкретными платформами, проще воспроизвести соответствующий звуковой файл перед отображением диалогового окна:
AudioInputStream ais =
AudioSystem.getAudioInputStream(getClass().getResource("/information.wav"));
Clip clip = AudioSystem.getClip();
clip.open(ais);
clip.start();
JOptionPane.showMessageDialog(...);
clip.close();