我想用 QT 5.2.1 编译一些旧的 QT 项目,遇到了很多麻烦,其中之一是 QSound 问题:
if(!QSound::isAvailable()) {
ui.grpSounds->setEnabled(false);
ui.grpSounds->setTitle(tr("Sounds (Not Available)"));
}
错误: “isAvailable”不是“QSound”的成员
有人愿意帮助我吗?我是 Qt 的新手。 谢谢。
最佳答案
如果您想通知用户是否可以播放声音,那么最好的选择是 QAudioDeviceInfo .您可以使用静态方法查询可用的输入或输出设备
QList<QAudioDeviceInfo> QAudioDeviceInfo::availableDevices(QAudio::Mode mode)
例如,您可以将 QSound::isAvailable()
替换为
!QAudioDeviceInfo::availableDevices(QAudio::AudioOutput).isEmpty()
编辑:
QSound
是 gui 模块的一部分,但现在是多媒体模块的一部分(这更有意义)。你需要看看 changes in multimedia modules from Qt4 to Qt5获取更多信息。你可能还想看看 QSoundEffect
,它似乎有更丰富的 API
关于c++ - Isavailable 不是 QSound 的成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22294211/