學習mfc是從昨天晚上開始的,剛開始時我讀的是《深入淺出mfc》,讀了幾篇,感覺上它講的有那麼一點太本質了。但是我還是從它那裡獲得了乙個總體的認識。
不要被表面現象所蒙蔽了!我用vc6自動生成了乙個基於對話方塊的mfc程式。好了,不要看那個象是在vb下編寫程式的框框,我雙擊開啟原**檔案,這個時候我明白,事實上mfc就只是乙個類庫,我覺得只要稍微改變以下,我們甚至可以直接用#include 和#pragma來用mfc寫windows視窗程式!
瀏覽了原**很多遍-----呵呵--,很多東西不清楚。
看文章,看教程,我覺得我還應該先看點表面的東西,我得對mfc程式有個大體的認識----例如怎樣去做個程式啦之類的。
在看文章的過程中,我對比著那分原**看,今天看了些訊息對映的文章。
於是一時頭熱,自己搗鼓起原**----沒有用classwizard---呵呵,弄了個訊息處理函式,居然成功了。我開始驚嘆起自己的能力來,自言自語道:太誇張了,真的是到了一定的境界後,自己不看書都可以悟出原理來~~~(哈哈,讓高手見笑了~)
我的大膽做法:
於是:在cgggdlg裡加入訊息處理函式的宣告- afx_msg lresult mousemsg(wparam wparam,lparam lparam);
在cpp檔案裡的訊息對映那裡加入訊息對映巨集(cgggdlg有兩個這個東西,只需要看begin_message_map(cgggdlg, cdialog)):
on_message(wm_lbuttondown,mousemsg)
然後再定義那個函式:
afx_msg lresult cgggdlg::mousemsg(wparam wparam,lparam lparam)
f7~~~恩 就成功了~~執行程式看看,效果完全達到~~~ok 是個好的開頭~~
ps:13:30
在網上翻到一篇文章,一看,嚇我一跳,我的所謂「甚至可以直接用#include 和#pragma來用mfc寫windows視窗程式」居然是正確的,還真有人這樣寫程式的!我把他的示例程式複製到vc下,(這裡不是#pragma(comment,"***.lib")--也許只要找到相應的lib就可以)選擇using mfc int a static library~~編譯成功,連線也成功~~汗~為什麼又要我給 猜對了!
話說回來,剛開始時,我確實為我的想法感覺納悶。如果真的可以#include 來寫mfc程式的話,那麼那個說明mfc類庫的標頭檔案又在**被包含了呢?----當時我鬱悶了一下,也沒有深究下去------畢竟用mfc的人哪個會去不用那些wizard?後來一不小心開啟 stdafx.h檔案------總以為它是用來處理預編譯的,沒想到就在那裡面,包含了我猜測到的標頭檔案------afxwin.h!
ps:22:08
現在我已經基本上知道了mfc程式的大致執行過程,以及大致的框架。
mfc不僅僅是乙個封裝了windows api的類庫,它還提供了一層建立在
windows api
的c++
視窗類也是必須的,mfc提供了三個類cframewnd、cmdiframewnd(也需要cmdichildwnd)和cdialog 分別用於支援單文件視窗、多文件視窗和對話方塊。我們也需要自己做個類從那幾個類裡派生出常用的方法。為什麼要派生?理由和上面的差不多,就是為了實現自己需要的功能。
ps:23:38
在接下來的計畫裡,我決定先用mfc做幾個程式,先熟悉一下,這樣可以更深入地理解它。然後我還需要練習一些c++的高階特性----什麼是學的快忘的快?這個在偶身上體現的非常明顯--hoho~
練習mfc,我想我還是會基於對話方塊型別的。ok~~go ~
bing之初體驗
哈哈,期待已久的微軟搜尋引擎bing 必應 的中文版今天終於推出了。剛開始使用google搜尋其主頁時怎麼也搜尋不到,還以為微軟食言。後來轉念一想,bing很可能是google未來的最大競爭對手,在當前這個還不為人所熟知的階段,很有可能給對方穿穿小鞋的。於是用在ie自帶的搜尋工具條上鍵入bing之後...
Statspack之初體驗
呵呵,今晚之前從來沒有做過statspack 好像有點丟人 這幾天乙個資料庫實在被折磨得不行了,明明sga max size有1.5g,但是實際看整個例項才用了200 m記憶體,慢得要死,頻繁讀寫硬碟,偏偏硬碟又不是磁碟陣列,io狂慢,唉,痛苦啊。於是決定花點時間學下例項優化,今天列印了幾頁perf...
ZigBee之初體驗
古人說 工欲善其事,必先利其器 簡單看懂原理圖還是有必要的,雖然自己幾乎沒有硬體基礎,短時期畫所謂的版子不具現實意義。晶元原理圖自從有人說u是晶元標誌,p是埠,c是電容,r是電阻,s是按鍵,led是led燈。後才漸漸明白 引腳標記相同的,學長說表示版子內部已連線,至於露在外面的引腳他們說是用來跳線用...