VC++ 程序启动即隐藏

    所谓的隐藏是程序启动后不显示主窗体。

    网上介绍了很多方法,是否达到效果,众说纷纭,这里只介绍一种在项目中实际应用到的切实可行的方法。

这里假设主窗体为CMainDialog

1、变量声明:

BOOL m_bShowWindow;

2、给变量赋初始值

CMainDialog::CMainDialog(){
    m_bShowWindow = FALSE:
}

3、响应消息函数

afx_msg void OnWindowPosChanging(WINDOWPOS* lpwndpos);
BEGIN_MESSAGE_MAP(CMainDialog, CDialog)
	ON_WM_WINDOWPOSCHANGING()
END_MESSAGE_MAP()
void CMainDialog::OnWindowPosChanging(WINDOWPOS* lpwndpos)
{
	if (!m_bShowWindow)
	{
		lpwndpos->flags &= ~SWP_SHOWWINDOW;
	}

	__super::OnWindowPosChanging(lpwndpos);
	// TODO: 在此处添加消息处理程序代码
}

4、显示窗体

需要在显示窗体之前,设定m_bShowWindow=TRUE,之后ShowWindows(SW_SHOW)即可。

猜你喜欢

转载自blog.csdn.net/u012156872/article/details/117421593