2013-11-20 51 views
1

我正在嘗試創建一個可停靠工作區欄,非常像VS中的on。我正在使用BCGCBPro庫,我調用的函數基本上是一個控制欄派生類。在我的CMainFrame :: OnCreate函數中,我調用了create function來響應創建一個可停靠的工作區。MFC工作區欄:「無法創建空文檔」

當我運行下面,我得到一個斷言錯誤:

if (!m_wndWorkSpace.Create (_T("Workspace"), this, CSize (200,200), 
          TRUE, ID_VIEW_WORKSPACE, 
          WS_CHILD | WS_VISIBLE | CBRS_LEFT)) 
{ 
    TRACE0("Failed to create workspace bar\n"); 
    return -1;  // fail to create 
} 

的斷言錯誤抱怨我的CObject的* POB指針爲空。

現在,當我刪除WS_CHILD風格,我得到了臭名昭著的「無法創建空文件」:

if (!m_wndWorkSpace.Create (_T("Workspace"), this, CSize (200,200), 
          TRUE, ID_VIEW_WORKSPACE, 
          WS_VISIBLE | CBRS_LEFT)) 
{ 
    TRACE0("Failed to create workspace bar\n"); 
    return -1;  // fail to create 
} 

我已經做了一大堆的研究,還沒有具體的想法。我已經嘗試了一些我在互聯網上找到的替代品,但似乎沒有任何工作。任何幫助將不勝感激!!

在此先感謝

+0

查看調試輸出。那裏最後的信息是什麼? – xMRi

+0

警告:窗口創建失敗:GetLastError返回0x00000579 無法創建工作區欄 警告:窗口創建失敗:GetLastError返回0x00000000 警告:未能創建CFrameWnd。 警告:CDocTemplate無法創建框架。 – melbah

+0

這些是獲取「無法創建空文檔」錯誤時的最後一行。我相信它與資源文件有關,這是否有可能? – melbah

回答

0

您可能已經使用了豐富的編輯控件。要使用豐富的編輯控件,通用控件庫必須進行初始化。進入主應用程序的InitInstance函數並添加AfxInitRichEdit();這應該可以解決你的問題。 courtesy