修改以下位置,添加模块
...
set(CMAKE_CXX_STANDARD 20) # 设置C++标准
# 查找Qt6
find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Widgets **Multimedia**)
find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Widgets **Multimedia**)
...
# 链接Qt6模块和库
target_link_libraries(CoinFlip PRIVATE Qt${QT_VERSION_MAJOR}::Widgets **Qt${QT_VERSION_MAJOR}::Multimedia**)
...
加粗部分为添加的模块;与'.pro'添加:QT += multimedia 的效果一致。
备注一些内容:
QT6中不存在QSound类,QT5.15是最后一个提供QSound类的Qt版本。在QT6中,QSoundEffect类应该被用来替代QSound。
QSoundEffect类用于播放简单的声音效果。它可以加载WAV文件,并在应用程序中播放它们。
以下是如何使用QSoundEffect类的一个基本示例:
#include <QSoundEffect>
QSoundEffect *soundEffect = new QSoundEffect;
soundEffect->setSource(QUrl::fromLocalFile("path_to_your_sound_file.wav"));
soundEffect->setLoopCount(QSoundEffect::Infinite);
soundEffect->setVolume(1.0);
soundEffect->play();
在这个例子中,创建了一个QSoundEffect对象,设置了音效的源文件路径,设置了循环次数为无限次,并设置了音量为最大。然后播放这个音效。
注意:
- 需要确保音频文件是WAV格式,因为QSoundEffect不支持其他格式的音频文件。
- 需要处理QSoundEffect对象的状态和错误。例如,如果文件不存在或文件格式不正确,soundEffect->play()将返回false。
- QSoundEffect类提供了更多的功能和灵活性,例如可以调整音效的音量,播放速度等。如果需要更高级的声音处理功能,应该使用QSoundEffect类。