16,471
社区成员
发帖
与我相关
我的任务
分享
//窗体显示与隐藏
void CMFC_NotifyIconDlg::ShowHide(bool flag)
{
static CRect TmpRect;
if (flag)
{//显示
ModifyStyleEx(WS_EX_TOOLWINDOW, WS_EX_APPWINDOW);
AfxGetApp()->GetMainWnd()->ShowWindow(SW_SHOW);
ShowWindow(SW_SHOW);
//移“回”到可见区域
AfxGetMainWnd()->MoveWindow(TmpRect.left, TmpRect.top, TmpRect.Width(), TmpRect.Height(), true);
}
else
{//隐藏
GetWindowRect(&TmpRect);//得到自身大小和位置
ModifyStyleEx(WS_EX_APPWINDOW, WS_EX_TOOLWINDOW);
AfxGetApp()->GetMainWnd()->ShowWindow(SW_HIDE);
ShowWindow(SW_HIDE);
//移“出”可见区域
AfxGetMainWnd()->MoveWindow(-TmpRect.right, -TmpRect.bottom, TmpRect.Width(), TmpRect.Height(), true);
}
}