首頁技術(shù)文章正文

MFC界面分屏操作

更新時(shí)間:2017-11-14 來源:黑馬程序員 瀏覽量:

近期陸續(xù)有學(xué)員問到在MFC編程中怎樣做到界面分屏,看到很多學(xué)員在這里很有疑惑,我在這里將MFC分屏操作流程向大家分享一下,希望能幫助到大家~

在開發(fā)MFC應(yīng)用程序的時(shí)候,我們經(jīng)常看到其他 C/S 軟件的界面格局是這樣的:

那么,他們?cè)趺醋龅降哪?我們可以使用界面窗體融合

首先,我們先創(chuàng)建一個(gè)單文檔視圖的MFC項(xiàng)目,點(diǎn)擊完成

在MFC 框架中,為我們提供了一個(gè)csplitterwnd 類——拆分窗口類,提供分離窗口的功能。

那么,在框架類 CMainFrame中,我們要添加一個(gè)csplitterwnd 類型的成員變量,以供我們使用。

下面,我們要重寫框架類 CMainFrame 中的OnCreateClient 事件

在事件中,我們要進(jìn)行界面切分操作,并添加如下代碼,那么,問題來了,我們?cè)撛鯓忧蟹执翱?切分后的窗口該由哪個(gè)類來控制它

值得注意的是:我們?cè)趧?chuàng)建完視圖之后,要將它原先 return 的界面視圖注銷掉,返回我們切分后的視圖界面,我們也看到在 RUNTIME_CLASS 宏函數(shù)中我們的值是空的,這里就是要我們添加我們自己的MFC類

我們就需要我們自定義的窗口視圖了,我們可以先創(chuàng)建兩個(gè)類,值得注意的是:我們創(chuàng)建的MFC 類它的基類必須是視圖類

我們創(chuàng)建好之后,返回到我們的框架類 CMainFrame中,并找到我們剛剛重寫的OnCreateClient函數(shù),將我們新建的視圖類 添加至RUNTIME_CLASS 宏函數(shù)的參數(shù)內(nèi)

發(fā)現(xiàn)還是報(bào)錯(cuò),為什么呢?加上頭文件即可。。。

那么,分屏的效果就出來了。友情提示:獲得更多學(xué)科學(xué)習(xí)視頻+資料+源碼,請(qǐng)加QQ:3276250747。

分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!