从枚举常量内部运行Runnable以播放声音

时间:2017-01-13 04:34:17

标签: java audio enums runnable

如何在枚举常量中成功运行runnable来播放声音?

我有以下代码:

public enum SystemSounds {

    ALERT(new Runnable() {
        public void run() {
            final Toolkit kit = Toolkit.getDefaultToolkit();
            kit.beep();
        }
    }) // End of alert sound

    ; // End of enum constants

    private Runnable r;

    SystemSounds(final Runnable r) {
        this.r = r;
    }

    public void play() {
        r.run();
    }

}

应该发生的事情是当我拨打SystemSounds.ALERT.play()时应该发出哔哔声。但事实并非如此。

当我尝试在Runnable中编写代码时,Eclipse也没有给我任何建议。打印到控制台可以正常工作。

应该怎么做?

1 个答案:

答案 0 :(得分:0)

声音实际上正在播放。

确保检查系统声音是否已调整,否则您将无法听到系统BEEP声音。