Win7双击任务栏图标导致窗口还原的问题
2011-08-03 15:02
183 查看
技术调查:Win7双击任务栏中高Cpu负荷运行的进程的图标,导致激活此进程的窗体还原事件SC_RESTORE。
解决方案:
我的需求要求主界面始终最大化显示,在主框架接收到SC_RESTORE消息时ShowWindow(SW_MAXIMIZE) 。
void CMainFrame::OnSysCommand(UINT nID, LPARAM lParam)
{
// win7 禁止窗体框架非客户区鼠标拖动
switch (nID)
{
case SC_RESTORE:
// CFrameWnd::OnSysCommand(SC_MAXIMIZE, lParam);
ShowWindow(SW_MAXIMIZE);
break;
case SC_MOVE:
case 0xF012:
return;
default:
CFrameWnd::OnSysCommand(nID, lParam);
}
}
void CMainFrame::OnSize(UINT nType, int cx, int cy)
{
//if (SIZE_RESTORED == nType)
//{
// ShowWindow(SW_MAXIMIZE);
// //this->MoveWindow(0,0,GetSystemMetrics(SM_CXSCREEN),GetSystemMetrics(SM_CYSCREEN));
// //return;
// //CFrameWnd::OnSize(SIZE_MAXIMIZED, cx, cy);
//}
//else
CFrameWnd::OnSize(nType, cx, cy);
// 解决浮动窗口移动中,主框架最小化导致的浮动窗口定位错误。
CView* pView = GetActiveView();
if (pView && SIZE_MAXIMIZED == nType)
{
//RecalcLayout();
::SendMessageA(pView->m_hWnd, WM_SIZE, cx, cy);
}
}
解决方案:
我的需求要求主界面始终最大化显示,在主框架接收到SC_RESTORE消息时ShowWindow(SW_MAXIMIZE) 。
void CMainFrame::OnSysCommand(UINT nID, LPARAM lParam)
{
// win7 禁止窗体框架非客户区鼠标拖动
switch (nID)
{
case SC_RESTORE:
// CFrameWnd::OnSysCommand(SC_MAXIMIZE, lParam);
ShowWindow(SW_MAXIMIZE);
break;
case SC_MOVE:
case 0xF012:
return;
default:
CFrameWnd::OnSysCommand(nID, lParam);
}
}
void CMainFrame::OnSize(UINT nType, int cx, int cy)
{
//if (SIZE_RESTORED == nType)
//{
// ShowWindow(SW_MAXIMIZE);
// //this->MoveWindow(0,0,GetSystemMetrics(SM_CXSCREEN),GetSystemMetrics(SM_CYSCREEN));
// //return;
// //CFrameWnd::OnSize(SIZE_MAXIMIZED, cx, cy);
//}
//else
CFrameWnd::OnSize(nType, cx, cy);
// 解决浮动窗口移动中,主框架最小化导致的浮动窗口定位错误。
CView* pView = GetActiveView();
if (pView && SIZE_MAXIMIZED == nType)
{
//RecalcLayout();
::SendMessageA(pView->m_hWnd, WM_SIZE, cx, cy);
}
}
相关文章推荐
- 关于终端任务栏导致的窗口上浮问题
- [wxWidgets]_[初级]_[自绘窗口最小化点击任务栏图标还原的办法]
- Eclipse 编辑视图窗口最大化图标浮在最前,导致编辑视图双击最大化失效
- [wxWidgets]_[初级]_[自绘窗口最小化点击任务栏图标还原的办法]
- WIN7任务栏修复-解决windows7任务栏不能停靠图标的问题
- MFC 无边框对话框实现点击任务栏图标 还原窗口的功能
- 关于C# WinForm中“显示桌面后”,点击任务栏右下角图标还原的问题 - [IT技术] 2011-
- 关于对话框最小化到托盘后,点击托盘图标后只在任务栏显示而无法还原窗口的解决方法。
- 窗口最小化以后左键点击任务栏上图标无法还原
- 如何解决Win7任务栏电源图标不显示的问题
- 阻止win7任务栏图标自动和窗口标签合并的简单方法
- 鼠标左键双击图标出现属性窗口的问题
- Win7还原任务栏默认设置解决设置错等问题
- 解决win7任务栏音量、电源图标消失的问题
- 处理win7任务栏通知区域图标异常问题
- 清理win7任务栏图标
- win7 去除任务栏上出现的过期图标
- Xp,win7下 jar文件双击不能运行,或无法发现main方法,java -jar的问题解决
- 让win7任务栏里面的窗口和xp一样不折叠同个软件的多个窗口
- Win7双击文件夹总是打开新窗口的解决方法