孫鑫VC第四課學習筆記

2021-04-12 22:22:48 字數 2320 閱讀 2476

孫鑫

vc第四課學習筆記

訊息對映 1.

vc中乙個點的資料結構

cpoint 2.

訊息響應函式:

如乙個on***()

響應函式,在標頭檔案中在注釋巨集之間有函式原型的宣告

//}afx_msg

其中afx

表明是訊息響應函式的宣告。

在原檔案中,有乙個

begin_message_map()

和end_message_map()

在這一對巨集函式之間,會有訊息和訊息響應函式的關聯巨集函式,如

on_***()

。訊息對映的實現:在

mfc中,某個視窗的控制代碼和相應的類的指標有乙個對照表,當收到乙個訊息,通過控制代碼就可以找到響應的類的指標,我們將這個指標傳遞給基類,基類會呼叫乙個函式

windowproc()

,在wincore.cpp

中,且是虛函式。這個函式裡面呼叫了

onwndmsg()

,真正的訊息路由就由這個函式來完成,根據訊息型別,然後就到派生類的標頭檔案中,在

declare_message_map()

上面有沒有訊息響應函式的宣告,然後在原檔案中在

begin_message_map()

和end_message_map()

之間有沒有關聯函式。

3.一些

dc的函式區別一使用

windows api

函式的::getdc()

和::releasedc() 二

mfc有乙個

cdc類

cdc *pdc = getdc()

和cwnd

的releasedc() 三

cclientdc dc(this) 四

cwindowdc dc(this) 其中

cclientdc

和cwindowdc

的相同點就是在建構函式中會自動呼叫

getdc

,在析構函式中會呼叫

releasedc

,不同點就是乙個面向各戶區域,乙個面向各戶和非各戶區域。

這邊順便講到了如何獲得

windows

桌面視窗的控制代碼,使用函式

getdesktopwindow()。4.

線條的型別和顏色可以通過

cpen

建構函式來完成,可看

msdn

。一般無論是新的字型或者任何關於線條顏色等,都要將設定的新物件新增到裝置描述表中,可以使用

selectobject()

函式,它會返回原本的裝置型別,即我們使用完畢,應該要恢復原來的裝置描述表。

5.如何建立位圖,一般可以在資源中先新增一幅位圖,然後呼叫函式。

cbitmap bitmap;

bitmap.loadbitmap(

位圖資料的

id); 6.

c++中

static

的部分用途

class point

static void init()

};void main()

說明:類中的靜態方法,它並不屬於類的某個物件,而只是屬於類本身,它在類載入的時候,已經給這個**分配了**區,也就是說它不屬於某個具體的物件,因此可以這麼呼叫,當然,非靜態的方法是屬於具體的物件的。

class point

static void init()

private:

int x, y; };

void main()

說明:在靜態方法中呼叫非靜態變數,在

point

的物件沒有產生之前,

init()

函式已經有了,但是對於x和

y還沒有分配記憶體空間,肯定是不能成功的,當然,x和

y的初始化放在

output()

中肯定是可以的。

另外在非靜態成員函式中呼叫靜態函式也是可以的,反之是不可以的。靜態成員函式只能訪問靜態成員變數。

class point

static void init()

private:

static int x, y; };

void main()

但這樣還是有問題的,因為對於靜態成員變數,必須在類的外面進行初始化,也就是在外面加上這麼兩句話:

point::x = 0;

point::y = 0;

當然了,如果你在

main

函式中沒有呼叫

point::init()

,那麼也就沒有必要在類外面對x和

y初始化,這不是絕對的。

7.一些畫圖的基本知識

鋼琴第四課

因為此前每天都練琴,曲譜也都記住了,所以,週六,臨時被老師喊去時,非常自信。學到了很多知識。1.連貫性方面 連貫性要注意 其實,連貫性在於對曲目的熟練程度,手指的靈活程度,還有不同音之間的連貫跳躍 音要連續 不同音,要連續連線在一起 這個音落下,上個音才起來 2.節奏方面 四分音符要短快,彈到了,立...

C 學習第四課 串

字串 兩種形式,一種是c模式,一種是c 模式 c模式 char a 6 char a hello 幾種函式 strcpy str1,str2 將str2的內容複製到str1上 strcat str1,str2 將str2連到str1的後面 strlen str1 求取字串str1的長度 strcmp...

Python全棧 第四課 學習筆記

list 索引,切片,步長 li 100,jarvis true,1,2,3 索引 print li 0 type li 0 print li 1 type li 1 print li 1 切片 顧頭不顧腚 print li 2 相關練習題 li 1,3,2,a 4,b 5,c 通過對li列表的切片...