让对话框也支持多文档的使用

王朝vc·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

BOOL CApp::InitInstance()

{

///////////////////////////////////

m_pDocTemplate = new CMultiDocTemplate(

IDR_MSG, //user define

RUNTIME_CLASS(MessageDoc),

RUNTIME_CLASS(MessageFrame), // main SDI frame window

RUNTIME_CLASS(MessageView));

AddDocTemplate(m_pDocTemplate);

// Enable DDE Execute open

EnableShellOpen();

RegisterShellFileTypes(TRUE);

// Parse command line for standard shell commands, DDE, file open

CCommandLineInfo cmdInfo;

ParseCommandLine(cmdInfo);

//.....................

............

}

//..........

public:

CMultiDocTemplate * m_pDocTemplate;

//...........

//响应函数 比如按钮

void CApp::OnManageMessage()

{

ASSERT(m_pDocTemplate != NULL);

CDocument* pDoc = NULL;

CFrameWnd* pFrame = NULL;

pDoc = m_pDocTemplate->CreateNewDocument();

if (pDoc != NULL)

{

pFrame = m_pDocTemplate->CreateNewFrame(pDoc, NULL);

if (pFrame != NULL)

{

m_pDocTemplate->SetDefaultTitle(pDoc);

if (!pDoc->OnNewDocument())

{

pFrame->DestroyWindow();

pFrame = NULL;

}

else

m_pDocTemplate->InitialUpdateFrame(pFrame, pDoc, TRUE);

}

else

delete pDoc;

}

if (pFrame == NULL ¦¦ pDoc == NULL)

AfxMessageBox(AFX_IDP_FAILED_TO_CREATE_DOC);

else

.............

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航