如何为一个多文档系统,添加登陆对话框??

解决方案 »

  1.   

    提供一个也许不是很成熟的方案:
    [code=C/C++]/
    void CMainFrame::OnShowWindow(BOOL bShow, UINT nStatus) 
    {
    CFrameWnd::OnShowWindow(bShow, nStatus);

    // TODO: Add your message handler code here
    CDlgLogon dlg;
    if(IDCANCEL == dlg.DoModal())
    ::PostQuitMessage(-1);
    }
      

  2.   

    你说的这种方法,还是有点抽象,不是太懂啊,不过我通过了另外的一种方式解决了,就是不知道是不是有漏洞。
    BOOL CHospitalManagementApp::InitInstance()
    {
            …………
    CLoginDlg dlg;
    if(dlg.DoModal()==IDOK)
    {
    pMainFrame->ShowWindow(m_nCmdShow);
    pMainFrame->UpdateWindow();
    return TRUE;
    }
        else
    {
    ::PostQuitMessage(-1);
    }
    }
      

  3.   

    呵呵,我觉得楼主的方法跟我的差不多,但你放的位置也许只要两句就好了 if (!ProcessShellCommand(cmdInfo))
    return FALSE;/////放在这里------------
    CLoginDlg dlg;
    if(IDCANCEL == dlg.DoModal())
    return FALSE;
    //////////////////////// m_pMainWnd->ShowWindow(SW_SHOWNORMAL);
    m_pMainWnd->UpdateWindow();