MFC與對(duì)話框

MFC與對(duì)話框

ID:37711540

大小:13.69 KB

頁(yè)數(shù):6頁(yè)

時(shí)間:2019-05-29

MFC與對(duì)話框_第1頁(yè)
MFC與對(duì)話框_第2頁(yè)
MFC與對(duì)話框_第3頁(yè)
MFC與對(duì)話框_第4頁(yè)
MFC與對(duì)話框_第5頁(yè)
資源描述:

《MFC與對(duì)話框》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)

1、MFC與對(duì)話框1、對(duì)話框編輯器設(shè)計(jì)對(duì)話框模板,有兩個(gè)重要的步驟:1、從工具欄選擇控件(control,功能各異的小小零組件)加到對(duì)話框2、填寫此控件的標(biāo)題、ID以及其他性質(zhì)。2、以下利用對(duì)話框編輯器設(shè)計(jì)【PenWidth】對(duì)話框的過(guò)程。1、在VisualC++集成開發(fā)環(huán)境中單擊【Insert/Resource】——>在【InsertResource】對(duì)話框中——>【Resourcetype】為Dialog。2、Scribble。Rc文件被打開,對(duì)話框編輯器出現(xiàn),會(huì)自動(dòng)給我們一個(gè)空白的對(duì)話框,內(nèi)含有兩個(gè)按鈕【OK】和【Cancel】,控件工具箱也為出現(xiàn),如果沒(méi)有出現(xiàn),點(diǎn)擊視圖—

2、—>工具箱,控件工具箱就會(huì)出現(xiàn)。3、為控件設(shè)定屬性。打開【DialogProperties】對(duì)話框,在對(duì)話框的任何地方單擊鼠標(biāo)右鍵,【DialogProperties】對(duì)話框就會(huì)出現(xiàn)?,F(xiàn)在修改對(duì)話框的ID為IDD_PEN_WIDTHS,把標(biāo)題改為“PenWidths”.4、為對(duì)話框加入兩個(gè)Edit控件,兩個(gè)Static控件,以及一個(gè)按鈕1、鼠標(biāo)右鍵單擊新增的按鈕,在Propertypage中把標(biāo)題改為“Default”,并把ID改為IDC_DEFAULT_PEN_WIDTHS2、鼠標(biāo)右鍵單擊第一個(gè)Edit控件,在Propertypage中把ID改為IDC_THIN_PEN_W

3、IDTH.以同樣的方式把第二個(gè)Edit控件的ID改為IDC_THICK_PEN_WIDTH.3、鼠標(biāo)右鍵單擊第一個(gè)Static控件,Propertypage中出現(xiàn)其屬性,在Caption項(xiàng)把內(nèi)容改為“ThinPenWidth:”,以同樣的方式把第二個(gè)Static控件的內(nèi)容改為“ThickPenWidth”4、調(diào)整每一個(gè)控件的位置,使之美觀整齊5、調(diào)整Taborder,所謂Taborder是指使用者在操作對(duì)話框時(shí),按下Tab鍵后,鍵盤輸入焦點(diǎn)在各個(gè)控件上的巡回次序。調(diào)整Taborder的方法:【LayOut/TabOrder】命令項(xiàng)。即格式——>Tab鍵順序6、測(cè)試對(duì)話框。單擊

4、【LayOut/Test】命令項(xiàng)。1、利用ClassWizard連接對(duì)話框與其專用類一旦完成了對(duì)話框的外貌設(shè)計(jì),再來(lái)就是設(shè)計(jì)其行為,我們有兩件事要做:第一件事:從MFC的CDialog中派生出一個(gè)類,用來(lái)負(fù)責(zé)對(duì)話框的行為。第二件事:利用ClassWizard把這個(gè)類和先前你產(chǎn)生的對(duì)話框資源連接起來(lái),通常這意味這你必須聲明某些函數(shù),用以處理你感興趣的對(duì)話框消息,并將對(duì)話框中的控件對(duì)應(yīng)到類的成員變量上,這也就是所謂的DialogDataeXchange(DDX),如果你對(duì)變量的內(nèi)容有任何的“確認(rèn)規(guī)則”的話,ClassWizard也允許你設(shè)定之,這就是所謂的DialogDataVa

5、lidation(DDV)。注意:所謂“確認(rèn)規(guī)則”:是指對(duì)某些特殊用途的變量進(jìn)行內(nèi)容檢查工作,例如月份一定是只可能在1~12之間,日期一定只可能是在1~31之間,人名一定不會(huì)有數(shù)字夾在中間,金錢數(shù)額不能夾帶文字。對(duì)話框的消息處理函數(shù)下面是完成上述所說(shuō)的兩件事中的第一件事的步驟:在對(duì)話框的任意位置雙擊鼠標(biāo)右鍵,進(jìn)入ClassWizard,在ClassName項(xiàng)填入類的名稱:CPenWidthsDlg,在類聲明文件處填寫類的PENWIDTH.h聲明文件,在類實(shí)現(xiàn)項(xiàng)填寫:PENWIDTH.H類的實(shí)現(xiàn)文件。單擊確認(rèn)按鈕于是類就產(chǎn)生了。下面是完成第二件事的步驟:要完成第二件事有兩個(gè)操作

6、需要完成:1、在CPenWidthsDlg中增加兩個(gè)變量,分別代表粗筆寬和細(xì)筆寬1、在CPenWidthsDlg中增加一個(gè)函數(shù),負(fù)責(zé)【Default】鈕被按下后的操作。以下是ClassWizard的操作步驟(增加一個(gè)函數(shù))1、進(jìn)入ClassWizard,選擇【messageMaps】選項(xiàng)卡,在選擇【ClassName】清單中的CpenWidthsDlg。2、【ObjectsIDs】清單列出對(duì)話框中各個(gè)控件的ID,請(qǐng)選擇其中的IDC_DEFAULT_PEN_WIDTH3、在右側(cè)的【Message】中選擇BN_CLICKED,我們處理的是控件,他們產(chǎn)生的消息是特別的一類,稱為No

7、tification消息。這種消息控件用來(lái)通知父窗口(通常是個(gè)對(duì)話框)某個(gè)事件產(chǎn)生了。4、按下【AddFuncation】鈕,接受默認(rèn)的OnClickDefaultPenWidths函數(shù)(也可以更改)5、單擊【EditCode】按鈕,光標(biāo)落在OnClickDefaultPenWidths函數(shù)身上。對(duì)話框數(shù)據(jù)交換與檢驗(yàn)(DDX&DDV)以兩個(gè)成員變量映射到對(duì)話框上的兩個(gè)Edit字段,當(dāng)【確認(rèn)】按鈕按下時(shí),第一個(gè)Edit字段的內(nèi)容自動(dòng)存儲(chǔ)m_nThinWidth中,第二個(gè)Edit字段的內(nèi)容自動(dòng)存儲(chǔ)m_nTh

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。