请问VC 中怎么加音乐,谢谢!!

请问VC 中怎么加音乐,谢谢!!,第1张

简单播放背景音乐等,使用PlaySound就可以了(这个只支持WAV,所以需要外部转一下并剪辑)

如果需要复杂的,就需要获取MCI音频句柄进行播放了,这个看你编程模式,有很多代码和控件的方式,可以网上搜索到,看你需要和方便使用哪一种了。

加个SND_LOOP循环就可以了呀!

假如你想在背景乐前还有其他很多音乐的话,建议你使用VFW,方便简单

可以同时播放N多音乐,下面时以前写的一个mp3播放器的,见笑呵呵!

支持wav,mid,mp3,wma等音频格式,如果音乐播放的时候继续打开,前面的音乐不会听掉,而是叠加在一起,实现你的背景音乐,MCIWnd开头的就是VFW的函数,使用很简单,估计你一看函数名就知道作用了!

void CMiniMp3Dlg::OnBtn1() //打开

{

// TODO: Add your control notification handler code here

m_Audio = NULL

if(m_Audio == NULL)

{

CFileDialog mp3(TRUE,NULL,NULL,OFN_HIDEREADONLY,"MP3 WMA Files (*.mp3 *.WMA)|*.mp3*.wma|")

if(mp3.DoModal() == IDOK)

{

m_Path = mp3.GetPathName()

m_Audio = MCIWndCreate(this->GetSafeHwnd(),

AfxGetInstanceHandle(),

WS_CHILD|MCIWNDF_NOMENU,m_Path)

long snd =MCIWndGetLength(m_Audio)//得到文件长度

m_sInfo=TimeFormat(snd)

//m_sInfo.Format("%d",snd)

UpdateData(FALSE)

m_cSliderMusic.SetRangeMin(0)

m_cSliderMusic.SetRangeMax(snd/1000)

}

}

}

void CMiniMp3Dlg::OnBtn2() //播放

{

// TODO: Add your control notification handler code here

MCIWndHome(m_Audio)

MCIWndPlay(m_Audio)

SetTimer(0,1000,NULL)

nP=0

}

void CMiniMp3Dlg::OnBtn3() //暂停,恢复

{

//long snd =MCIWndGetPosition(m_Audio)

//m_sInfo=TimeFormat(snd)

if (GetMode(m_Audio)==1)

MCIWndPause(m_Audio)

else

if (GetMode(m_Audio)==2)

MCIWndResume(m_Audio)

}

void CMiniMp3Dlg::OnOK() //销毁

{

// TODO: Add extra validation here

MCIWndDestroy(m_Audio)

CDialog::OnOK()

}

void CMiniMp3Dlg::OnBtn4() //停止

{

// TODO: Add your control notification handler code here

MCIWndStop(m_Audio)

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11469733.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存