更新時間:2017-11-14 來源:黑馬程序員 瀏覽量:
近期陸續(xù)有學員問到在MFC編程中怎樣做到界面分屏,看到很多學員在這里很有疑惑,我在這里將MFC分屏操作流程向大家分享一下,希望能幫助到大家~
在開發(fā)MFC應用程序的時候,我們經(jīng)常看到其他 C/S 軟件的界面格局是這樣的:
那么,他們怎么做到的呢?我們可以使用界面窗體融合
首先,我們先創(chuàng)建一個單文檔視圖的MFC項目,點擊完成
在MFC 框架中,為我們提供了一個csplitterwnd 類——拆分窗口類,提供分離窗口的功能。
那么,在框架類 CMainFrame中,我們要添加一個csplitterwnd 類型的成員變量,以供我們使用。
下面,我們要重寫框架類 CMainFrame 中的OnCreateClient 事件
在事件中,我們要進行界面切分操作,并添加如下代碼,那么,問題來了,我們該怎樣切分窗口?切分后的窗口該由哪個類來控制它
值得注意的是:我們在創(chuàng)建完視圖之后,要將它原先 return 的界面視圖注銷掉,返回我們切分后的視圖界面,我們也看到在 RUNTIME_CLASS 宏函數(shù)中我們的值是空的,這里就是要我們添加我們自己的MFC類
我們就需要我們自定義的窗口視圖了,我們可以先創(chuàng)建兩個類,值得注意的是:我們創(chuàng)建的MFC 類它的基類必須是視圖類
我們創(chuàng)建好之后,返回到我們的框架類 CMainFrame中,并找到我們剛剛重寫的OnCreateClient函數(shù),將我們新建的視圖類 添加至RUNTIME_CLASS 宏函數(shù)的參數(shù)內(nèi)
發(fā)現(xiàn)還是報錯,為什么呢?加上頭文件即可。。。
那么,分屏的效果就出來了。友情提示:獲得更多學科學習視頻+資料+源碼,請加QQ:3276250747。