VIEW DOC frame 互相訪問

2021-05-28 00:29:58 字數 2155 閱讀 8039

獲得cmainframe:

-在cchildframe中可用getparentframe()

-在其它類中用afxgetmainwnd()

獲得cchildframe:

-在cview中用getparentframe()

-在cmainframe中用mdigetactive()或getactiveframe()

-在其它類中用afxgetmainwnd()->mdigetactive()或afxgetmainwnd()->getactiveframe()

獲得cdocument:

-在cview中用getdocument()

-在cchildframe中用getactiveview()->getdocument()

-在cmainframe中用

-if

sdi:getactiveview()->getdocument()

-if

mdi:mdigetactive()->getactiveview()->getdocument()

-在其它類中

-if

sdi:afxgetmainwnd()->getactiveview()->getdocument()

-if

mdi:afxgetmainwnd()->mdigetactive()->getactiveview()->getdocument()

獲得cview:

-在cdocument中

position

pos

= getfirstviewposition();getnextview(pos)

-在cchildframe中

getactiveview()

-在cmainframe中

-if

sdi:getactiveview()

-if

mdi:mdigetactive()->getactiveview()

-在其它類中

-if

sdi:afxgetmainwnd()->getactiveview()

-if

mdi:afxgetmainwnd()->mdigetactive()->getactiveview()

// 不錯!!!

不過要注意在doc中要取得view的指標c*view要注意類c*view宣告的問題,

因為預設情況下,mfc在*view.h中已經包含了*doc.h,如果在*doc.h中包含

*view.h,就會引起巢狀包含問題,這樣要在*doc.h中加入

class

c*view;

而在*doc.cpp中加入

#include

"*view.h"

//

方便我一直專門操作的說:)

// 我先拋塊磚,有玉的砸過來!

2。通過afxgetmainwnd()得到主視窗;

3。通過cmdiframewnd::getactiveframe得到當前活動視窗;

4。通過getnextwindow()遍例所有的子視窗;(如果要得到你想要的子視窗,可以通過特定的成員變數來標誌);

6。通過cdoctemplate::getfirstdocposition()以及cdoctemplate的getnextdoc()組合來遍歷所有的該模板的文件物件,並用cdocument::getdoctemplate()來得到文件模板,用cdocment::gettitle()

或者getpathname()來判斷當前的文件是哪個。

7。通過cdocuemt的getfirstviewpositon()以及getnextview()來遍歷檢視物件,一般通過訪問view的成員變數來區別各個檢視;通過cview::getdocument()來得到文件物件;

8。frame->view:

通過getactiveview方法;

9。frame->doc:通過getactivedocument();

10。view->frame:getparentframe();

11。view->doc:getdocuemt()//前面已經說了。

12。doc->view:前面說了;

13。doc->frame:不知道有沒有很直接的方法。

訪優酷評論

html page xlanguage c autoeventwireup true codefile default.aspx.cs inherits default 後台 using system using system.collections.generic using system.lin...

畫素巡訪 at ptr

當我們進行影像處理時,可能有操作是要查訪所有畫素,比如說我們想要改變一張影像的灰階值,讓所有的畫素值加20,這時我們就需掃過影像所有的畫素,這邊介紹opencv的at 和ptr 函式以及迭代器,來查訪mat所有畫素。at 可用來讀取和修改某個畫素值,通常用來對隨機位置的畫素進行讀寫,就效率考量,並不...

windows nginx配置https訪問

本文主要記錄在windows下安裝nginx 環境 win10 64位。進入window的cmd視窗,輸入如下圖所示的命令,進入到nginx目錄 d nginx 1.8.1 使用 start nginx.exe 進行nginx的安裝,如下圖所示 安裝成功後,在 任務管理器 中會看到 nginx.ex...