MFC中Doc類獲取View類的方法(SDI)

2022-07-24 13:15:24 字數 628 閱讀 4650

從view類中獲取doc的方法如下:

cyourdoc* pdoc = getdocument();

這個函式已經寫好,所以無需自己新增,使用時直接利用pdoc即可。

若反過來,從doc中獲取view中的函式,就需要自己寫一些**來進行獲取view的指標。

主要是通過一些成員函式進行操作:

virtual position getfirstviewposition() const;

virtual cview* getnextview(position pos) const;

利用這些函式,在自己的doc檔案中進行實現:

cyourview* pview;

position pos = getfirstviewposition();

pview = getnextview(pos);

有時候最後一行**會出現錯誤,提示**為:

error c2440: '=' cannot convert from 'cview *' to 'cyourview『

為此我們可以利用型別轉換來處理:

pview = dynamic_cast(getnextview(pos));

這樣便實現了單文件單檢視專案中doc對view類的捕獲。

MFC中Doc類獲取View類的方法

從doc中獲取view中的函式,需要自己寫一些 來進行獲取view的指標。主要是通過一些成員函式進行操作 virtual position getfirstviewposition const virtual cview getnextview position pos const 利用這些函式,在...

新建View類MFC列印報錯

就在對話方塊調出單文件列印時 做了很多事情當然 view中 過載 virtual bool onprepareprinting cprintinfo pinfo virtual void onbeginprinting cdc pdc,cprintinfo pinfo virtual void on...

MFC中app doc view類區別

document view模式 是為了在邏輯上,讓資料和顯示分開。一般在document裡,定義document類的成員變數,來存資料,並用view來顯示.在document裡,當成員變數的資料改變時,你可以用updateallviews 來通知檢視更新 在view裡,用getdocument來獲取...