CWnd* pOldWnd = CWnd::FromHandle(GetActiveWindow ());//获得当前活动窗口,如果为主窗口,跳过!
if (this->m_pMainWnd!= pOldWnd)//非主窗口
{
CDialog* pOldDlg = (CDialog*)CWnd::FromHandle (GetActiveWindow ());
HWND hwnd = GetActiveWindow();
while (pOldDlg!=NULL && (pOldDlg != ((CDialog*)theApp.m_pMainWnd) /*(hwnd != NULL) && (hwnd != this->m_pMainWnd->m_hWnd)*/))
{
//pOldDlg->OnClose ();
// ::SendMessage(hwnd,WM_CLOSE,(WPARAM)0,(LPARAM)0);
//pOldDlg->OnCancel ();
//hwnd = GetActiveWindow ();
//pOldDlg->CloseWindow ();
// pOldDlg->DestroyWindow ();
pOldDlg->EndDialog (0);
pOldDlg = (CDialog*)CWnd::FromHandl

这段代码展示了如何在MFC应用中关闭当前活动的非主窗口模态对话框,并创建一个新的对话框进行窗口切换。通过获取并关闭活动窗口,然后显示新的对话框,实现了窗口之间的跳转。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



