我有一個MFC MDI應用程序,我在Visual Studio中使用選項卡式界面開發。我希望在標籤組中打開非文檔視圖的視圖 - 即它們沒有關聯的文檔,不需要保存它們等。以某種方式,它們將表現得像一個非模態對話框,但是標籤化。 [這些窗口只是簡單地顯示信息和採取命令]MFC MDI選項卡式應用程序 - 要將非文檔窗口添加到選項卡組
MDI應用程序的內部機制似乎非常適合使用DocTemplate - Document - Frame - 查看對象結構及其關聯窗口。 Q1)任何人對於如何創建這樣的窗口並將它們添加到已經建立的MDI選項卡組中有任何想法?我試圖創建一個RichEdit的窗口,並增加其在與:
// m_wndListingView will be a non-editable CRichEditCtrl
m_wndListingView->Create(WS_CHILD | WS_VISIBLE | ES_WANTRETURN | WS_VSCROLL |
WS_HSCROLL | ES_MULTILINE | ES_LEFT | ES_AUTOHSCROLL | ES_SAVESEL |ES_READONLY,
CRect(0, 0, 20, 20), pMainFrame, 1234);
// get Tab control and add a new tab
CMFCTabCtrl *mm_wndTabCtrl = &pMainFrame->GetMDITabs();
mm_wndTabCtrl->AddTab (m_wndListingView, _T("LISTING"));
此創建並顯示窗口..但它沒有添加到選項卡組。 Q2)如果我設法得到一個窗口(可能它需要是一個框架窗口)在標籤組中正確顯示,我如何告訴'系統',當用戶關閉它,我不想應用程序提示用戶保存文檔?也許我可以重載'OnClose'方法......但它不能是document :: OnClose(),因爲沒有文檔。
感謝您的任何想法, CAS
我檢查了這一點。 [到目前爲止,我只是對新的文檔/視圖對使用相同的框架......並且我必須正確處理OnOpen()和OnClose()等'文檔'活動,但是它是過度的]。謝謝 – 2011-02-23 06:17:20