Word 型應用程式特徵:每個文件獨立視窗,擁有自己的工具列、狀態列、選單。關鍵在於將主框架功能下放至 CChildFrame。
CWinApp::InitInstance 隱藏主框架:pMainFrame->ShowWindow(SW_HIDE);CChildFrame 基類改為 CFrameWnd(原為 CMDIChildWnd)。CChildFrame::OnCreate。CChildFrame 成員變數加入 CToolBar, CStatusBar 等控制列物件。// ChildFrm.h 關鍵變更
class CChildFrame : public CFrameWnd {
protected:
CStatusBar m_wndStatusBar;
CToolBar m_wndToolBar;
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
// ...
};
此架構下每個子視窗獨立擁有完整 UI 元素,完美模擬 Word 行為。完整程式碼請參考原文下載。