更新時間: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。
【AI設計】北京143期畢業(yè)僅36天,全員拿下高薪offer!黑馬AI設計連續(xù)6期100%高薪就業(yè)
2025-09-19【跨境電商運營】深圳跨境電商運營畢業(yè)22個工作日,就業(yè)率91%+,最高薪資達13500元
2025-09-19【AI運維】鄭州運維1期就業(yè)班,畢業(yè)14個工作日,班級93%同學已拿到Offer, 一線均薪資 1W+
2025-09-19【AI鴻蒙開發(fā)】上海校區(qū)AI鴻蒙開發(fā)4期5期,距離畢業(yè)21天,就業(yè)率91%,平均薪資14046元
2025-09-19【AI大模型開發(fā)-Python】畢業(yè)33個工作日,就業(yè)率已達到94.55%,班均薪資20763元
2025-09-19【AI智能應用開發(fā)-Java】畢業(yè)當天offer率91%,薪資1W+占比54.2%,班級均薪12k+
2025-09-19