MDI的多種文件類型

來源:互聯網
上載者:User

由於具體細節比較複雜,只說一下大道上的。回想不起來就看《深入淺出MFC》。嘿嘿!

 

要實現多文件類型,主要是要添加相應的DocTemplate,然後在用App裡面的AddTemplate將文件類型儲存起來。在建立新的文件類型是:要分別為原來的文件類型準備相應的一套資源(菜單,表徵圖等)(手動添加),以及添加這套資源對應的字串資源。然後就完成相應的CDoc類,CView類,CMDIChildFrame。

 

這三者是建立新的子視窗的必須的三大法寶。具體的《深入淺出MFC》中有詳細介紹。

 

完成上面的幾步後,在每次點擊建立檔案時,頭回彈出對話方塊,諮詢要建立的文件類型。在同一個App下可以開啟多個文件類型,這就是早期出現的“超級軟體”:即可以進行文書處理,又可以進行影像編輯,有可以進行表格處理的強大軟體的根源。

 

另外注意MDI程式內建的【windows】-》【new window】是application framework裡面內建的訊息映射,在你的項目工程裡是找不到其MESSAGE_MAP的。此訊息的處理函數的CMDIFrameWnd::OnWindowNew();所以要實現同一文檔多種表現,且彼此獨立視窗的話,可以採用多文檔實現方法,只是把其中CView類換掉,其他做法一樣,然後就是自己建立一個功能表項目,在此功能表項目對應的處理函數裡面寫上CMIDFrameWnd::OnWindowNew()的代碼,當然代碼不可能完全一樣,有一行需要改動,就是對應DocTemplate指標,將其改寫為你新家的文件類型。如果沒有為該文檔添加對應的字串資源就不會出現對話方塊選擇文件類型,那麼就可以實現一種文件類型多種表現形式了。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.