新人求教:ocx插件,在ie9上面,双击全屏后窗口被压缩到屏幕左上角,但是在ie10和ie11上面又是正常的,

wangzhigangcsdn 2015-11-23 06:37:28
ocx插件,在ie9上面,双击全屏后窗口被压缩到屏幕左上角,但是在ie10和ie11上面又是正常的,这是我的代码:
//全屏
void CRJVideoCtrl::ShowMax()
{
////隐藏系统任务栏
ShowSysTaskBar(false);
::GetWindowRect(GetSafeHwnd(), &m_LastRect);
m_hWndParent = ::GetParent(GetSafeHwnd());
::SetParent(GetSafeHwnd(),::GetDesktopWindow());
INT nScrWidth = GetSystemMetrics(SM_CXSCREEN);
INT nScrHeight = GetSystemMetrics(SM_CYSCREEN);
::SetWindowPos(::GetDesktopWindow(),HWND_TOP,0,0,nScrWidth,nScrHeight,SWP_NOCOPYBITS|SWP_NOREDRAW|SWP_NOMOVE|SWP_NOSIZE|SWP_NOZORDER);
::ShowWindow(GetSafeHwnd(),SW_SHOWMAXIMIZED);
::SetWindowPos(GetSafeHwnd(), HWND_TOPMOST, 0, 0, nScrWidth, nScrHeight, SWP_SHOWWINDOW |SWP_FRAMECHANGED);
m_BFullScreen = true;
}
//恢复
void CRJVideoCtrl::ShowNormal()
{

ShowSysTaskBar(true);
::SetWindowPos(GetSafeHwnd(), HWND_NOTOPMOST, 0, 0, 0, 0, SWP_SHOWWINDOW|SWP_NOMOVE|SWP_NOSIZE);
::SetParent(GetSafeHwnd(), m_hWndParent);
m_fullDialog.ShowWindow(SW_HIDE);
m_fullDialog.DestroyWindow();
::ScreenToClient(m_hWndParent, (LPPOINT)&m_LastRect);
::ScreenToClient(m_hWndParent, ((LPPOINT)&m_LastRect)+1);
::MoveWindow(GetSafeHwnd(), m_LastRect.left, m_LastRect.top,
m_LastRect.right-m_LastRect.left,
m_LastRect.bottom-m_LastRect.top,
TRUE);
m_BFullScreen=false;

}
////隐藏系统任务栏和开始按钮
void CRJVideoCtrl::ShowSysTaskBar(bool bShow)
{
CWnd* pWnd = CWnd::FindWindow(_T("Shell_TrayWnd"), NULL);
CWnd* startMenu = CWnd::FindWindow(_T("Button"), NULL);
if( !bShow )
{
startMenu->ShowWindow(SW_HIDE);
pWnd->ShowWindow(SW_HIDE);
}
else
{
// Code to Show the System Task Bar
pWnd->ShowWindow(SW_SHOW);
startMenu->ShowWindow(SW_SHOW);
}
}
...全文
261 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangzhigangcsdn 2015-11-26
  • 打赏
  • 举报
回复
求大手指点,务沉啊!

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧