Java class TrayIcon,通知消息。如何用自定义声音替换系统声音?

Java class TrayIcon, notification message. How to replace system sound with a custom one?

Java class TrayIcon,通知消息。如何用自定义声音替换系统声音? 也许我需要将系统声音静音并播放我的声音?有执行命令吗?

更新:windows 托盘上工作通知的重要部分

public void notifyIt() {
    if (SystemTray.isSupported()) {
        try {
            mPromptClock.displayTray();
        } catch (AWTException e) {
            e.printStackTrace();
        }
    } else {
        System.err.println("System tray not supported!");
    }
}

private void displayTray() throws AWTException {
    SystemTray tray = SystemTray.getSystemTray();
    File f = new File("./src/res/0.jpg");
    BufferedImage image = null;
    try {
        image = ImageIO.read(f);
    } catch (IOException e) {
        e.printStackTrace();
    }
    TrayIcon trayIcon = new TrayIcon(image, "Vaqt  bo'ldi");
    trayIcon.setImageAutoSize(true);
    trayIcon.setToolTip("1st message");
    tray.add(trayIcon);
    trayIcon.displayMessage("2nd message"+navbat, "Vaqtingiz bo'ldi", TrayIcon.MessageType.INFO);//Navbat
}

您不能使用 TrayIcon 执行此操作。

您传递给此函数的 TrayIcon displayMessage calls Shell_NotifyIconW to display a notification. The NOTIFYICONDATAW 数据的本机实现不提供使用自定义音频文件的方法,但您可以设置 dwInfoFlags (NIIF_NOSOUND) 来禁用播放的声音。 TrayIcon 没有公开设置此集合的方法。

如果您想要相同的通知行为,您将必须自己调用此函数并自己播放自己的声音。