vs2008-VS2008制作多媒体播放器,WindowsMediaPlayer控件按钮出错

问题描述

VS2008制作多媒体播放器,WindowsMediaPlayer控件按钮出错

播放媒体后,按停止键(WindowsMediaPlayer),再将鼠标移至菜单栏(没有点击),立刻又继续播放
以下是部分代码:
BOOL CPLAYERDlg::OnInitDialog()
{
CDialog::OnInitDialog();
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon
skinppLoadSkin(_T("blue.ssk"));//blue.ssk为项目下的皮肤文件,

// Add "About..." menu item to system menu.

// IDM_ABOUTBOX must be in the system command range.
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
m_control=static_cast<CWMPControls>(m_play.GetControls());
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
    CString strAboutMenu;
    strAboutMenu.LoadString(IDS_ABOUTBOX);
    if (!strAboutMenu.IsEmpty())
    {
        pSysMenu->AppendMenu(MF_SEPARATOR);
        pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
    }
}

// Set the icon for this dialog.  The framework does this automatically
//  when the application's main window is not a dialog
SetIcon(m_hIcon, TRUE);         // Set big icon
SetIcon(m_hIcon, FALSE);        // Set small icon

// TODO: Add extra initialization here

return TRUE;  // return TRUE  unless you set the focus to a control

}
void CPLAYERDlg::OnPlay()
{
// TODO: Add your control notification handler code here
CON=1;
CString str;
if(m_list.GetCount()<=0)MessageBox("请先打开最少一个媒体文件!","Warning",MB_OK);
else
{
KillTimer(1);
if(m_list.GetCurSel()<0)
{
m_list.SetCurSel(0);
}
index=m_list.GetCurSel();
m_list.GetText(index,str);
m_play.SetUrl(str);
SetTimer(1,1000,NULL);
}

}
void CPLAYERDlg::OnBnClickedSequence()
{
// TODO: 在此添加控件通知处理程序代码
FG=0;
}

void CPLAYERDlg::OnBnClickedRandom()
{
// TODO: 在此添加控件通知处理程序代码
FG=1;
}

void CPLAYERDlg::OnBnClickedCycle()
{
// TODO: 在此添加控件通知处理程序代码
FG=2;
}

void CPLAYERDlg::OnTimer(UINT_PTR nIDEvent)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
int index1=m_play.GetPlayState();
if(index1==1)
{
if(FG==0)
{
CString str;
int index=m_list.GetCurSel()+1;
if(index>=m_list.GetCount())
index=0;
m_list.GetText(index,str);
m_play.SetUrl(str);
m_list.SetCurSel(index);
}
else if(FG==1)
{
srand(time(0));
m_list.SetCurSel(rand()%m_list.GetCount());
m_list.GetText(m_list.GetCurSel(),m_pathname);
m_play.SetUrl(m_pathname);
}
else if(FG==2)
{
m_list.GetText(m_list.GetCurSel(),m_pathname);
m_play.SetUrl(m_pathname);
}
else;
}
CDialog::OnTimer(nIDEvent);
}

解决方案

添加菜单处理函数,禁止任何播放操作

解决方案二:

如果不用皮肤有这个问题么?你的代码没有看出问题。

解决方案三:

先在鼠标菜单栏移动事件消息添加一些信息,看是否触发它的什么动作了。不然不可能出现看你的情况。

解决方案四:

无外部控件制作多媒体播放器(三)

时间: 2016-03-01
Tags: 多媒体, vs2008

vs2008-VS2008制作多媒体播放器,WindowsMediaPlayer控件按钮出错的相关文章

报表查看器 Web 控件 HTTP 处理程序尚未在应用程序的 web.config 文件中注册

问题描述 我在asp.net页面上放了个reportView的控件,也配置了数据源,但是运行后在页面什么也不显示,一片空白.网上的一般配置,比如web.config的配置都有了,查看页面的源文件有:报表查看器配置错误</h2><p>报表查看器Web控件HTTP处理程序尚未在应用程序的web.config文件中注册.请将<addverb="*"path="Reserved.ReportViewerWebControl.axd"type=&

请问WindowsMediaPlayer控件指定输入设备的问题

问题描述 请问WindowsMediaPlayer控件指定输入设备的问题 想用C++ builder 编一个小程序.程序中用到WindowsMediaPlayer控件,研究后 发现WindowsMediaPlayer控件的视频输入只有本地文件或者网络两种模式. 请问能够实现临时生成一个视频流,然后把这个视频流输入WindowsMediaPlayer 播放吗?相当于把字节流作为输入. 解决方案 网络模式不就可以么?你把自己本机当作服务器,然后发送流媒体的字节流给播放器.

C#中winform窗体的WindowsMediaPlayer控件怎么播放不了视频

问题描述 C#中winform窗体的WindowsMediaPlayer控件怎么播放不了视频 在控件中播放就这样 在系统中的播放器播放就能播 解决方案 你好,解决方案如下: 1.WindowsMediaPlayer不支持某些格式的文件如.rmvb格式,安装解码. 2.加上this.wmpPlayer.Controls.Play试试. 3.this.wmpPlayer.URL = "视频路径名" 解决方案二: ..............

java制作仿微信视频播放控件_java

此控件继承自 SurfaceView,利用 MediaPlayer 播放视频. 小视频播放界面 MoviePlayerView.java import java.io.IOException; import android.content.Context; import android.media.AudioManager; import android.media.MediaPlayer; import android.media.MediaPlayer.OnCompletionListene

新中新二代身份证阅读器ocx控件使用提示对象不支持怎么解决?

问题描述 新中新二代身份证阅读器ocx控件使用提示对象不支持怎么解决? 100C 项目需要在客户端浏览器中使用新中新二代身份证阅读器读取身份证信息,使用官方提供的ocx控件,并且在自己本机上可以读取,但是在客户机上使用时在调用控件的方法的时候提示对象不支持XXX方法图片说明官方提供的驱动什么的都装上了,好像还是不行,跪求解释....官方的demo也跑不通图片说明 解决方案 你机器上可以读取,那你的机器和客户机有什么区别吗??? 解决方案二: 都是window7 64位,都是IE9, 官方提供的控

c#wi-C#中如何在windowsmediaplayer 控件屏幕中添加文本呢,求大神指导

问题描述 C#中如何在windowsmediaplayer 控件屏幕中添加文本呢,求大神指导 C#中如何在windowsmediaplayer 控件屏幕中添加文本呢或者添加字幕呢?哪个属性是的?大神指导下,我是一年级菜鸟.

c++-MFC windowsmediaplayer控件问题。急!

问题描述 MFC windowsmediaplayer控件问题.急! 在mfc中用mediaplayer控件播放wav格式音频,进度条往前走了一点回退到起点.声音还在继续是什么问题.windowsmediaplayer也升级了.求大牛指点!!! 解决方案 关于mfc界面风格 以及 文本控件字符大小的问题MFC 控件ComboBox问题WindowsMediaPlayer控件的使用----------------------

WindowsMediaPlayer控件如何可以设定视频的帧率?小弟实习!

问题描述 我的AVI视频,在WindowsMediaPlayer控件中明显播放帧率不对.(明显快很多!)我的视频是25f/s.如何在WindowsMediaPlayer控件中设置视频播放帧率.谢谢!找了半天没找到!我的WindowsMediaPlayer播放的视频老是和我后台dll处理不同步,郁闷的!小弟实习! 解决方案 解决方案二:用directshow把.解决方案三:已经确定使用WindowsMediaPlayer.directshow的播放界面比较简单.WindowsMediaPlayer

C#WindowsMediaPlayer控件有声音但是看不到画面

问题描述 C#WindowsMediaPlayer控件有声音但是看不到画面[color=#FF0000][/color] 解决方案 解决方案二:是不是没有装相关插件的问题?解决方案三:引用1楼beau_lily的回复: 是不是没有装相关插件的问题? 您的意思是,装什么插件,抱歉刚看到,对这点不是很懂