让MFC对话框程序一开始就隐藏

让MFC对话框程序一开始就隐藏

有时候我们的需要MFC对话框程序一开始就隐藏窗口,在后台运行。

1、修改对话框资源的Visible属性的值为False.

2、修改CXXXApp::InitInstance()中的代码。

CXXXDlg dlg;
m_pMainWnd = &dlg;
INT_PTR nResponse = dlg.DoModal();
if (nResponse == IDOK)
{

}
else if (nResponse == IDCANCEL)
{

}

return FALSE;

把上面的代码改为:

CXXXDlg* pDlg = new CXXXDlg;
pDlg->Create(CXXXDlg::IDD);
pDlg->ShowWindow(SW_HIDE);

m_pMainWnd = pDlg;

return TRUE;


3、为了不让程序运行时抢焦点,CXXXDlg::OnInitDialog() 应该返回FALSE;


4、在 CXXXDlg::OnNcDestroy() 中加入 delete this;

你可能感兴趣的:(让MFC对话框程序一开始就隐藏)