Как отключить все звуки (сигналы тревоги) из QWidget?

Мне интересно, как отключить все звуки от QDialog, У меня есть этот базовый класс всплывающих окон на основе QDialog,

class PopUp : QDialog
{
// member vars and funcs
};

который я отображаю как

PopUp *popup_msg = new PopUp(this, /* ... */);
popup_msg->exec();

Этот класс PopUp на самом деле ничего не делает, кроме отображения некоторого текста, но мне нужно, чтобы он был модальным, поэтому я вызываю setModal(true) в конструкторе. Проблема в том, что когда QDialog является модальным, он воспроизводит сообщение об ошибке / звуковой сигнал / звук, когда пользователь пытается взаимодействовать с другими виджетами (например, MainWindow). Я хочу отключить этот звук!

Этот вопрос: Как я могу отключить звуки, воспроизводимые Qt QMessageBox?, решает проблему, но не решает ее полностью в моем случае. Его решение только приглушает звук show()-ин QMessageBox (или же QDialog в моем случае), но звук все еще играет, когда пользователь пытается нажать на другие виджеты. Я хочу, чтобы он полностью отключился, и можно подумать, что это была тривиальная проблема с действительно простым решением. Может быть что-то вроде QWidget::setAttribute(Qt::WA_MuteAllSounds, true) мог бы существовать, но, по-видимому, нет (?).

Вся помощь, советы и рекомендации наиболее ценны!

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]