上一篇 | 下一篇

用RealPlayer控件制作的播放器

发布: 2008-6-26 11:21 | 作者: admin | 来源: | 查看: 3次

程序运行效果截图:

本文介绍如何插入RealPlay控件实现媒体文件的播放,代码运行效果图如左:

下面简要介绍一下具体实现步骤:

一、建立基于对话框的程序

二、在对话框内添加RealPlayer G2 control的ActiveX控件

(工程->添加工程->compontent and controls->registed ActiveX controls )。

三、在对话框内添加源程序内所示的按钮和静态文本 分别用于控制打开播放等控制及显示歌曲信息 其ID号如源程序

四、用MFC映射各按钮消息

void CSunapplerealplayerDlg::OnOpen()

{

char szFileFilter[]=

"RM File(*.rm)|*.rm|"

"Mp3 File(*.mp3)|*.mp3|"

"MPEG File(*.mpeg)|*.mpeg|"

"Media File(*.asf)|*.asf|"

"Video File(*.dat)|*.dat|"

"MPGA File(*.mpga)|*.mpga|"

"Wave File(*.wav)|*.wav|"

"AVI File(*.avi)|*.avi|"

"Movie File(*.mov)|*.mov|"

"Mid File(*.mid;*,rmi)|*.mid;*.rmi|"

"Wma File(*.wma)|*.wma|"

"All File(*.*)|*.*||";

CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY,szFileFilter);

if(dlg.DoModal()==IDOK){

CString PathName=dlg.GetPathName();

PathName.MakeUpper();

m_player->SetSource(PathName);

m_player->DoPlay();

SetDlgItemText(IDC_STATIC1,m_player->GetAuthor());

SetDlgItemText(IDC_STATIC2,m_player->GetTitle());

SetDlgItemText(IDC_COPYRIGHT,m_player->GetCopyright());

SetDlgItemText(IDC_SOURCE,m_player->GetSource());

}

}

void CSunapplerealplayerDlg::OnPlay()

{

SetDlgItemText(IDC_STATIC1,m_player->GetAuthor());

SetDlgItemText(IDC_STATIC2,m_player->GetTitle());

SetDlgItemText(IDC_COPYRIGHT,m_player->GetCopyright());

SetDlgItemText(IDC_SOURCE,m_player->GetSource());

m_player->DoPlay();

UpdateData(false);

SetTimer(1,20,NULL);

}

void CSunapplerealplayerDlg::OnTimer(UINT nIDEvent)

{

if(0&&isRepeat)

m_player->DoPlay();

CDialog::OnTimer(nIDEvent);

}

void CSunapplerealplayerDlg::OnClose()

{

///////添加此代码时不要忘了在stdafx.h开头处添加前两行

AnimateWindow(GetSafeHwnd(),1000,AW_HIDE|AW_BLEND);

KillTimer(0);

////////////////////////////////////

//此处采用DestroyWindow关闭窗口

//多谢杜修杏 老师指点

///////////////////////////////////

this->DestroyWindow();

字号: | 推荐给好友

31/3123>

评分:0

我来说两句