關於API SDK和MFC的對照學習

2021-09-21 09:44:41 字數 1329 閱讀 2642

如鵬網的《c語言也能幹大事》教程中使用的是c語言呼叫api sdk的方式來進行windows程式的編寫,有的同學在學習的過程中到網上查詢課上教的一些函式的寫法,但是有時候會碰到一些用mfc來進行呼叫的方式,不知道怎麼轉換成api sdk的方式。首先要肯定和鼓勵這位同學的想法,因為他已經開始明白

語言是相通的

這個道理了。

mfc是微軟使用c++語言對api sdk進行封裝後的乙個windows開發框架庫

,mfc對api sdk的封裝簡單,可以看到「赤果果」的api sdk的影子,mfc的包裝一般只是隱藏了資源控制代碼,在改寫成api的方式的時候一般只要

將方法最開始增加乙個引數,然後這個引數填相應的控制代碼

就可以了。

舉例說明:

例1mfc**:edit1->setwindowtext(text("hello"));

edit1表示乙個控制項,因此改寫到api方式的話只要如下呼叫:

setwindowtext(hwndedit,text("hello"))//hwndedit是控制項的控制代碼

例2void cmainframe::onstarttimer() 

cmainframe是乙個視窗,因此如下改裝:

void main_onstarttimer() 

例3cclientdc dc(this); 

dc.selectobject(&pen); 

cclientdc是乙個畫布,因此如下改裝:

selectobject(hdc,&pen);//hdc是畫布的控制代碼。

「方法最開始增加乙個引數,然後這個引數填相應的控制代碼」,嘎嘎,一點技術含量都沒有,不過確實就是這麼簡單,

例1mfc**:edit1->setwindowtext(text("hello"));

edit1表示乙個控制項,因此改寫到api方式的話只要如下呼叫:

setwindowtext(hwndedit,text("hello"))//hwndedit是控制項的控制代碼

例2void cmainframe::onstarttimer() 

cmainframe是乙個視窗,因此如下改裝:

void main_onstarttimer() 

例3cclientdc dc(this); 

dc.selectobject(&pen); 

cclientdc是乙個畫布,因此如下改裝:

selectobject(hdc,&pen);//hdc是畫布的控制代碼。

「方法最開始增加乙個引數,然後這個引數填相應的控制代碼」,嘎嘎,一點技術含量都沒有,不過確實就是這麼簡單.

ps:感覺這篇文章的確在利用sdk程式設計的時候避免因為需要再了解mfc的麻煩!贊乙個

MFC 關於mfc中控制項禁用和狀態判斷

bool enablewindow bool benable true 判斷控制項是否可用可以呼叫 cwnd iswindowenable函式 bool iswindowenable iswindowenabled 函式用於判斷指定的視窗是否允許接受鍵盤或滑鼠輸入。函式原型 bool iswindo...

MFC 關於MFC中CImage的簡單使用

首先要將 include 加進來,開始時我加到stdafx.h中,但一直提示windows.h被重複引入的問題,後將其加在別的標頭檔案中,就可以了.一 的載入 hresult load lpctstr pszfilename throw hresult load istream pstream th...

寫點關於MFC的東西

雖然mfc算挺老的東西了,但總是還有能用到的時候,但也實在是沒有 太大的興趣作深入的研究,打算把以前關於它的一些理解寫一寫,以免遺忘。windows程式設計第五版在講到window 視窗 這個詞語的時候用到 了 魂牽夢縈 這個詞語,確實,翻來覆去我們倒騰的不都是關於視窗那點 事情麼。win32程式和...