不知道楼主给我分不?哈哈 ---------------------------------- 建立一个继承于 CMDIChidWnd 的类,不防设为 CChldFrm。在 CWinApp 中作如下变化。InitInstance() { . ... //instead of adding CSingleDocTemplate // Add CMultiDocTemplate. pDocTemplate = new CMultiDocTemplate( IDR_MAINFRAME, RUNTIME_CLASS(CSDIDoc), RUNTIME_CLASS(CChldFrm), // For Main MDI Frame change this frame window from // CFrameWnd derivative ( i.e. CMainFrame ) // to your CMDIChildWnd derived CChldFrm. RUNTIME_CLASS(CSDIView)); /// After this it is required to create the main frame window // which will contain all the child windows. Now this window is // what was initially frame window for SDI. CMainFrame* pMainFrame = new CMainFrame; if (!pMainFrame->LoadFrame(IDR_MAINFRAME)) return FALSE; m_pMainWnd = pMainFrame; ..... } 在从 CMDIFrameWnd 中继承的类 CMainFrame 代替 CFramWnd 后,所有的类都将从 CMDIFrame 继承,而不是 CFrameWnd,编译运行后你就会发现程序已经从 SDI 变换到 MDI。 注意:在 CMainFram 中必须将构造函数从 private 改为 public,否则会出错。-------------------------------------- 别处看到的。
----------------------------------
建立一个继承于 CMDIChidWnd 的类,不防设为 CChldFrm。在 CWinApp 中作如下变化。InitInstance()
{
. ...
//instead of adding CSingleDocTemplate
// Add CMultiDocTemplate.
pDocTemplate = new CMultiDocTemplate(
IDR_MAINFRAME,
RUNTIME_CLASS(CSDIDoc),
RUNTIME_CLASS(CChldFrm),
// For Main MDI Frame change this frame window from
// CFrameWnd derivative ( i.e. CMainFrame )
// to your CMDIChildWnd derived CChldFrm.
RUNTIME_CLASS(CSDIView));
/// After this it is required to create the main frame window
// which will contain all the child windows. Now this window is
// what was initially frame window for SDI.
CMainFrame* pMainFrame = new CMainFrame;
if (!pMainFrame->LoadFrame(IDR_MAINFRAME))
return FALSE;
m_pMainWnd = pMainFrame;
.....
} 在从 CMDIFrameWnd 中继承的类 CMainFrame 代替 CFramWnd 后,所有的类都将从 CMDIFrame 继承,而不是 CFrameWnd,编译运行后你就会发现程序已经从 SDI 变换到 MDI。
注意:在 CMainFram 中必须将构造函数从 private 改为 public,否则会出错。--------------------------------------
别处看到的。
1.建立一个与原工程同名的单文件工程XXX;
2.删除原工程的CChildFram.h/.cpp;别忘了再资源文件Munu下删除IDR_MYGLTETYPE<因为它对
应着CChildFram>
3.用新建的工程的XXXApp.h/.cpp ^ XXXMainFram.h/.cpp 代替原工程的相应文件。就这么简单了,什么都不用去管,让傻瓜向导去管吧!!!haha...