读书人

activemovie控件作的播放器在选择文件

发布时间: 2013-03-29 14:24:52 作者: rapoo

activemovie控件做的播放器在选择文件后出现Debug Assertion Failed!!
出现Debug Assertion Failed!!选择重试后,出现断点
activemovie控件作的播放器在选择文件后出现Debug Assertion Failed!
activemovie控件作的播放器在选择文件后出现Debug Assertion Failed!
activemovie控件作的播放器在选择文件后出现Debug Assertion Failed!
相关函数代码如下:
void CPlayerDlg::MoveMovieWindow()
{
//改变窗口大小以适应控件大小
CRect rc1,rc2,rc3;
m_amovie.GetWindowRect(&rc1); //得到ActiveMovie控件大小
GetWindowRect(&rc2); //获得对话框的大小
GetClientRect(&rc3); //获得对话框客户区大小
ClientToScreen(rc3);
//改变对话框大小以适应ActiveMovie控件大小
if(m_amovie.m_hWnd)
MoveWindow(rc2.left,rc2.top,rc2.Width()-rc3.Width()+rc1.Width(),
rc2.Height()-rc3.Height()+rc1.Height());
m_amovie.GetWindowRect(&rc1);
ScreenToClient(&rc1);
GetClientRect(&rc3);

//使ActiveMovie控件在对话框的客户区居中
if(m_amovie.m_hWnd)
m_amovie.MoveWindow((rc3.Width()-rc1.Width())/2,(rc3.Height()-
rc1.Height())/2,rc1.Width(),rc1.Height());

}

请各位大神指教~~ activemovie GetWindowRect 控件句柄 unused
[解决办法]
你的CPlayerDlg没有创建成功,或者压根就没创建。
[解决办法]
窗体还没有创建成功呢把!
[解决办法]
void CPlayerDlg::MoveMovieWindow()
GetWindowRect(&rc2); //获得对话框的大小
就是要 获得
CPlayerDlg
的 客户区。
如果 CPlayerDlg 还没有 实例。就出错。

CPlayerDlg dlg;
dlg.Domodle();

或者 dlg.Create

[解决办法]
“在菜单那边打开文件”
你的 对话框 有菜单?
文件打开后
CPlayerDlg dlg;
dlg.Domodal();

读书人网 >VC/MFC

热点推荐