SetTimer()不执行OnTimer()
我要做一个音频播放器的滑块,以显示音乐播放的进度,用SetTimer()函数实现滑块的自动前进,但是OnTimer()并不执行,望高手解答,代码如下:
void ConDlg::OnPlay() //ConDlg:CDialog是运行的主窗口
{
CString string;
playButton.GetWindowText(string);
if(string == "暂停")
{
PauseMusic();
pos=GetMusicPos();
playButton.SetWindowText("播放");
}
else
{
SetMusicPos(pos);
PlayMusic();
playButton.SetWindowText("暂停");
}
CString str;
long l = GetMusicLength();
pos=GetMusicPos();
str.Format("%d",l);
SetDlgItemText(IDSTATIC,str);
slider.SetPos(pos*100/l);
SetTimer(1,1000,NULL);
AfxMessageBox("哈哈");//运行验证执行
}
void ConDlg::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default
AfxMessageBox("哈哈");//不执行
CString str;
long l = GetMusicLength();
pos=GetMusicPos();
str.Format("%d",l);
SetDlgItemText(IDSTATIC,str);
slider.SetPos(pos*100/l);
// CDialog::OnTimer(nIDEvent);
}