initinstance()函数部分代码如下:CCommandLineInfo cmdInfo;//定义命令行ParseCommandLine(cmdInfo);//解析命令行// 调度在命令行中指定的命令。如果// 用 /RegServer、/Register、/Unregserver 或 /Unregister 启动应用程序,则返回 FALSE。if (!ProcessShellCommand(cmdInfo)) //程序启动时创建新文档return FALSE;// 唯一的一个窗口已初始化,因此显示它并对其进行更新m_pMainWnd->ShowWindow(SW_SHOW);m_pMainWnd->UpdateWindow();这里我不理解的就是,到m_pMainWnd->ShowWindow(SW_SHOW)这一句唯一的一个窗口已经初始化,按说窗口初始化应该调用createwindow函数啊,这样的调用我怎么没看见呢再问一个问题,createwindow函数既然要创建一个窗口,一个窗口是由视图类对象、文档类对象、框架类对象有机的结合在一起形成的,createwindow()函数是如何把它们联系在一起的啊,在createwindow()函数的那些参数当中没有体现出任何这样的信息啊谢谢指导,我是C++mfc的初学者
2 回答
慕森卡
TA贡献1806条经验 获得超8个赞
CMultiDocTemplate* pDocTemplate;
pDocTemplate = new CMultiDocTemplate(
IDR_TESTMFTYPE,
RUNTIME_CLASS(CTestmfcDoc),
RUNTIME_CLASS(CChildFrame), // custom MDI child frame
RUNTIME_CLASS(CTestmfcView));
AddDocTemplate(pDocTemplate);
// create main MDI Frame window
CMainFrame* pMainFrame = new CMainFrame;
if (!pMainFrame->LoadFrame(IDR_MAINFRAME))
return FALSE;
m_pMainWnd = pMainFrame;
在你所写代码上面,有这些代码,这是创建主窗口和MFC模式模板的代码,取代了createwindow但作用相同(内部代码是一致的),这种模式在非MFC框架下不能使用。
- 2 回答
- 0 关注
- 830 浏览
添加回答
举报
0/150
提交
取消