
比如你的工程放在/home/user文件夹下,名字叫MyProj。那么,Qt Creator在构建你的工程的时候,会在与你的工程同一文件夹下(这里也就是/home/user)创建一个诸如build-MyProj-Qt*这样的文件夹,这个文件夹才是你的Qt程序运行时的初始文件夹。
假设你的音乐文件放在MyProj目录下music子目录中,那么,相对路径应该这么写:
../MyProj/music/mymusic.wav(即要相对于那个build目录来构建相对路径)。
或者,你把音乐文件作为资源的一部分,就没这个问题了。
不要用相对路径。用绝对路径比如你的mysounds\ 在F:\下 就写成 "F:/mysounds/bells.wav"
同时注意斜杠的方向,最好用 /
此情况解决的方法有很多:1、如1楼所说,启动一个线程,当每次引进或打开indexWidget时,启动MusicThread,而MusicThread中可以用最简单的方式添加音乐QSound::play("../test.wav")
2、重写你需要添加背景音乐的widget,在构造时即可添加音乐播放QSound::play("../test.wav")
3、不用线程,不用重写,如方法一所述,当你打开这个widget时,同样执行QSound::play("../test.wav")
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)