| 
158上位机VC MFC播放MP3格式文件   
 158上位机VC MFC播放MP3格式文件 
 
 功能展示 
 MP3音频文件是我们日常中极为常见的文件格式,我们当前例程通过编程程序实现MP3文件的打开播放快进快退等操作,效果如图; 要点提示 Windows Media Player控件的功能有很多,对应的操作类也很多,我们当前仅用到打开和播放文件,所以在加载控件时我们只要选择两个类便可,既CWMPControls, CWMPPlayer4;MP3文件的播放是通过CWMPControls控件类的成员函数来实现,如播放play(),停止stop(); 实现功能 1.新建基于对话框的应用程序 2.在主对话框中插入控件Windows Media Player,根据自已的开始需要,设置控件属性,然后关联变量CWMPPlayer4  m_Mp3;操作过程中会弹出对话框提示添加类,我们当前例程仅添加两个类CWMPControls, CWMPPlayer4; 3.变量使用前记得添加头文件#include"wmpplayer4.h"#include "wmpcontrols.h“ 
 然后是拖拽按钮控件,实现MP3音频文件的打开暂停播放快进快退等操作;下面是代码部分 复制代码void CGkbc8Dlg::OnOpen() 
{
        CFileDialog Dlg(TRUE,".mp3",NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"mp3文件(*.MP3)|*.MP3||");
        if(Dlg.DoModal() == IDOK) m_Mp3.SetUrl(Dlg.GetPathName());
}
void CGkbc8Dlg::OnPlay() 
{        
        m_Mp3.GetControls().play();
}
void CGkbc8Dlg::OnPause() 
{
        m_Mp3.GetControls().pause();
}
void CGkbc8Dlg::OnStop() 
{ m_Mp3.GetControls().stop();}
复制代码void CGkbc8Dlg::OnFd() //快退
{
        if(m_Mp3.GetPlayState()!=3)//没播放时返回
                return;
        double pos=m_Mp3.GetControls().GetCurrentPosition();
        if(pos<5)
                return;
        m_Mp3.GetControls().SetCurrentPosition(pos-5);        
}
void CGkbc8Dlg::OnFf() //快进
{        
        if(m_Mp3.GetPlayState()!=3)//没播放时返回
                return;
        double pos=m_Mp3.GetControls().GetCurrentPosition();
        m_Mp3.GetControls().SetCurrentPosition(pos+5);
}
我们来演示下功能实现的整个过程 
 |