新建MFC桌面應用程式

2021-10-10 16:14:57 字數 2488 閱讀 8645

從此他剪了寸頭,他開始抽菸,他熬夜到三四點,他開始相信錢,不再相信任何人,如果不看鏡子,我都不認識他了。。。

----  網易雲熱評

一、mfc的概念和作用

1、什麼mfc?

全稱 microsoft fundation class library,我們稱之為微軟基礎類庫   從硬碟的存在形式上來說mfc就是乙個庫。   從原理上來說,mfc還是乙個程式框架。

2、為什麼使用mfc?

基於框架開發,提供工作效率,減少開發周期,降低開發成本。

二、mfc應用程式的分類

1、使用mfc製作自己的庫程式:靜態庫程式,規則動態庫程式,擴充套件動態庫程式

2、使用mfc製作自己的視窗程式:

單文件檢視架構程式

cframewnd - 框架視窗類(封裝了框架視窗的操作)

cdocument -文件類,(封裝了關於資料的管理,例如:提取/轉換/儲存..)

cview - 檢視視窗類,(封裝了關於檢視視窗的操作)

多文件檢視架構程式

cmdichildwnd - 子框架視窗類(封裝了子框架視窗的操作)

cmdiframewnd - 主框架視窗類(封裝了主框架視窗的操作)

cdocument -文件類,(封裝了關於資料的管理,例如:提取/轉換/儲存..)

cview - 檢視視窗類,(封裝了關於檢視視窗的操作)

對話方塊架構程式

cdialog - 對話方塊視窗類,(封裝了關於對話方塊視窗的操作)

三、mfc類概述

1、cobject - mfc庫中絕大部分類的最基類,執行時類資訊機制 / 動態建立機制 / 序列化機制

2、ccmdtarget - 訊息對映機制的最基類

4、cdocument及其子類 - 文件類,管理資料

5、exceptions - 異常處理類,封裝了mfc庫中可能出現各種異常情況

6、cfile及其子類 - 檔案操作類,封裝了檔案的讀寫等等各種操作。

7、cwnd - 所有視窗類的最基類

8、frame windows - 框架視窗類,封裝了關於框架視窗的各種操作

9、dialogbox - 對話方塊視窗類,封裝了關於各種對話方塊的操作

10、views - 檢視視窗類,封裝了關於各種檢視視窗的操作

11、controls - 控制項視窗類,封裝了關於各種控制項視窗的操作

12、cdc及其子類,繪圖裝置類,封裝了各種繪圖裝置的操作

13、cgdiobject及其子類,繪圖物件類,封裝了各種繪圖物件的操作

14、array  / list / map - 封裝了標準中的各種容器結構

15、非cobject類 - 封裝了標準中的各種結構的操作,例如:cpoint 、crect、ctime、cstring....

四、製作第乙個mfc程式,環境為vs2019

1、新建新建windows桌面嚮導

2、配置專案

3、將該專案設為啟動項

4、修改屬性為多位元組,靜態庫中使用mfc

5、新建mfcbase.cpp原始檔

6、檔案內容為:

#include//定義乙個自己的框架類(cmyframewnd),派生自cframewndclass cmyframewnd : public cframewnd;;cmyframewnd* pframe = new cmyframewnd;pframe->create(null, "測試");this->m_pmainwnd = pframe;pframe->showwindow(sw_show);pframe->updatewindow();return true;}
7、程式執行流程:

進入入口函式(winmain)

8、執行效果:

注意:::開頭的函式為win32的api函式

afx開頭的函式為mfc中的全域性函式

桌面應用程式

桌面應用程式 在台式電腦上執行的應用程式稱為桌面應用程式。比如 記事本,word,excel。這種應用程式的特點是 1 缺少共享 2 直接雙擊就可以執行,不需要ie 3 一般以window的視窗形式存在 web應用程式 1 需要ie來執行 2 一般以網頁的形式的存在 3 可以有很多的客戶端來共享。比...

用Vue CLI新建應用程式

開啟命令視窗 一 使用webpack模板建立myproject專案 注意 專案名稱必須全小寫字母。執行 以下命令,然後根據提示操作。二 如果在嚮導執行時沒有選擇建立後安裝所有依賴項,則需要執行以下命令,手動安裝 cd myproject npm install 注意 在轉殖別人的專案之後首次按裝依賴...

Web應用程式與桌面應用程式的區別

web delphi 伺服器網路 internet access 如果都是用.net做的話,桌面程式需要開發伺服器端和客戶端兩塊程式,電腦都要安裝.net framework,b s形式的話,只用做伺服器端。但兩者桌面應用可能軟體介面更好控制一些,web形式客戶端的螢幕就不太好空,一般滿足1024 ...