MFC體系結(jié)構(gòu)(2)-創(chuàng)新互聯(lián)

一、CWind類

創(chuàng)新互聯(lián)建站為客戶提供專業(yè)的網(wǎng)站設計、成都網(wǎng)站制作、程序、域名、空間一條龍服務,提供基于WEB的系統(tǒng)開發(fā). 服務項目涵蓋了網(wǎng)頁設計、網(wǎng)站程序開發(fā)、WEB系統(tǒng)開發(fā)、微信二次開發(fā)、成都手機網(wǎng)站制作等網(wǎng)站方面業(yè)務。

1.工具/提示支持

為用戶提供簡短幫助

a.EnableToolTips打開提示功能

OnToolHitTest判斷是哪個字控件要顯示Tooltip

b.UpdateData  (DDV 對話框數(shù)據(jù)交換) 把MFC成員變量值給控件,或者控件的值交換給成員變量

c.UpdateDialogControls 比如對話框改變大小 刷新對話框控件

d.窗口居中

e.RunModalLoop  ContinueModal  EndModalLoop

暫時接管線程的消息循環(huán),可以做消息過濾,比如你手動實現(xiàn)模態(tài)對話框

你打開對話框,你只有對這個窗口的消息才處理,其他所有的都過濾掉.

二、CFrameWnd類 框架窗口

1.活動框架視圖文檔支持

a.GetActiveDocument()獲取活動激活的文檔

GetActiveView()獲得活動激活的視圖  SetActiveView()設置活動激活視圖

GetActiveFrame() 獲得激活的框架

b.GetTitle()  SetTitle() 設置框架標題

c.SetMessageText()  設置消息提示框的標題

d.BeginModalState() EndModalState() InModalState()


輔助對話框模態(tài)狀態(tài),模態(tài)對話框彈出來的時候,框架窗口是不激活的


但是,不激活的時候,你點擊他會閃動,提示用戶我是不激活的,

都需要上面的API來控制這些狀態(tài).

2.框架窗口和視圖的關(guān)系

a.最外層是Frame Window Object 框架窗口對象,顯示整個框架窗口.

b.View Object是一個子窗口,實際上就是客戶區(qū),被View視圖類分配,

共享了框架窗口的DC,框架窗口包著視圖.視圖可以有各種顯示的內(nèi)容.

c.View視圖負責和Document通訊,這就是一個典型的文檔視圖

應用框架.

MFC體系結(jié)構(gòu)(2)

3.更多的是在派生類里的支持,尤其是CMDIFrameWnd

他就是說對自己的客戶區(qū)劃分,有些客戶區(qū)可工具條,給面板,

有些則要給子框架,還有一些客戶區(qū)要分配給狀態(tài)欄,菜單條.

三、CViwe類 視圖類

1.派生類必須重載方法

a.virtual void OnDraw(CDC* pDC) = 0;

OnPaint里調(diào)用的子方法,OnPaint之前還要對DC做一個預處理


區(qū)分你是打印環(huán)境,還是打印預覽,還是屏幕顯示,OnDraw里面

你就不用再去區(qū)分現(xiàn)在是打印狀態(tài),我的做標書是什么樣子等待.

OnDraw就是專心的進行繪制,圖形繪制,信息顯示.

繪制需要的參數(shù),做標什么的,都在OnPrint里完成

OnPaint()方法在調(diào)用OnDraw方法向顯示器輸出之前需要做大量的準備工作,

其中之一就是準備一個跟顯示器相關(guān)的DC對象,并把此對象傳遞給OnDraw方法,讓其用此對象向顯示器輸出

OnPrint()方法在調(diào)用OnDraw方法向打印機輸出之前同樣作很多準備工作,

其中之一就是準備一個跟打印機相關(guān)的DC對象,并把此對象傳遞給OnDraw方法,讓其用此對象向打印機輸出。

b.virtual void OnUpdate(CView* psender,LPARAM lHint, CObject* pHint);

在文檔內(nèi)容發(fā)生變更的時候,他就通知視圖改變你的顯示,這個往往是用在

一個文檔多個視圖的時候.其中有個視圖有個用戶在這個視圖操作了一個東西,

那就會接到OnUpdate消息,psender是誰發(fā)起改變的操作,如果是NULL就是改變

所有的視圖,如果某個視圖發(fā)現(xiàn)psender和自己的this是相等的,就表示是自己,

自己則是已經(jīng)更新過了,則不需要再次更新. 頻繁調(diào)用會較低效率.

2.其他重要方法

a.GetDocument()得到視圖對應的文檔

b.OnActivateView()View激活的時候

c.OnActivateFrame()視圖所在框架激活的時候

d.其實這兩個激活任選其一即可,不用再兩個內(nèi)都寫代碼


因為View實際就代表了框架窗口的客戶區(qū),你框架窗口激活,

你客戶區(qū)也必須激活,你客戶區(qū)激活框架窗口也激活

3.View種類特點和用途(可用的派生類)

a.CEditview    簡單文本編輯視圖     記事本

b.CFromView    帶豐富控件的類對話框視圖  數(shù)據(jù)庫應用

c.CHtmlEditviw  HTML編輯顯示視圖    HTML編輯器

d.CHtmlView    HTML顯示視圖       電子郵件應用.瀏覽器

e.CListView    簡單列表視圖        類電子表格應用(需改進)

f.CRichEditview  RTF文本編輯視圖    寫字板等

g.CScrollView  帶滾動條的簡單視圖    繪圖冉家,CAD畫板

h.CTreeView    樹形控件視圖        顯示樹形信息的應用

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

名稱欄目:MFC體系結(jié)構(gòu)(2)-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://www.muchs.cn/article2/djjpoc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、自適應網(wǎng)站網(wǎng)站建設、網(wǎng)頁設計公司、服務器托管、網(wǎng)站營銷

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

手機網(wǎng)站建設