MFC窗口程序启动隐藏窗口,但是窗口闪烁一下才隐藏的处理

来源:互联网 发布:linux 对外开放端口 编辑:程序博客网 时间:2024/05/29 16:37

窗口类添加成员变量

BOOL m_bShowWindow;

构建函数里面设置为FALSE;

m_bShowWindow = FALSE;

窗口重写OnWindowPosChanging

如下添加代码完成后即可。

函数void CDlg::OnWindowPosChanging(WINDOWPOS* lpwndpos)
{
    //__super::OnWindowPosChanging(lpwndpos);


    if (!m_bShowWindow)
    {
        // Prevent window from being shown
        lpwndpos->flags &= ~SWP_SHOWWINDOW;
    }
}


可以封装一个现实窗口的方法

void CDlg::Show( BOOL bShow )
{
m_bShowWindow = bShow;
ShowWindow(m_bShowWindow);
}