chap5菜單、工具欄與狀態(tài)欄.ppt

chap5菜單、工具欄與狀態(tài)欄.ppt

ID:49376384

大?。?16.00 KB

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

時(shí)間:2020-02-05

chap5菜單、工具欄與狀態(tài)欄.ppt_第1頁(yè)
chap5菜單、工具欄與狀態(tài)欄.ppt_第2頁(yè)
chap5菜單、工具欄與狀態(tài)欄.ppt_第3頁(yè)
chap5菜單、工具欄與狀態(tài)欄.ppt_第4頁(yè)
chap5菜單、工具欄與狀態(tài)欄.ppt_第5頁(yè)
資源描述:

《chap5菜單、工具欄與狀態(tài)欄.ppt》由會(huì)員上傳分享,免費(fèi)在線(xiàn)閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)

1、第5章菜單、工具欄和狀態(tài)欄5.1菜單5.2工具欄5.3狀態(tài)欄5.1菜單菜單的顯示規(guī)則:若單擊菜單項(xiàng)后,將彈出一個(gè)對(duì)話(huà)框,那么在該菜單項(xiàng)文本后有“…”。若某菜單有子菜單,那么在該菜單項(xiàng)文本后有“?”若菜單項(xiàng)需要助記符,則用括號(hào)將帶下劃線(xiàn)的字母括起來(lái)。助記符與Alt構(gòu)成一個(gè)組合鍵?;蛟诓藛未蜷_(kāi)時(shí),直接按助記符鍵,對(duì)應(yīng)的菜單項(xiàng)也會(huì)被選中。若某項(xiàng)菜單需要快捷鍵的支持,則一般將其列在相應(yīng)菜單項(xiàng)文本之后。25.1菜單頂層菜單下拉菜單35.1.1用編輯器設(shè)計(jì)菜單1.編輯菜單子菜單的空位置保存可見(jiàn)按鈕頂層菜單的空位置45.1.1

2、用編輯器設(shè)計(jì)菜單1.編輯菜單單擊“測(cè)試”菜單項(xiàng)下方的空位置,在菜單項(xiàng)屬性對(duì)話(huà)框中,輸入標(biāo)題“切換菜單(&D)”,在ID框輸入該菜單項(xiàng)的資源標(biāo)識(shí)符:ID_TEST_CHANGE。關(guān)閉菜單項(xiàng)屬性對(duì)話(huà)框,將新添加的菜單項(xiàng)拖放到“查看”和“幫助”菜單項(xiàng)之間,結(jié)果如圖所示。需要說(shuō)明的是,菜單項(xiàng)位置改變后,其屬性并沒(méi)改變。52.菜單命令的消息映射(1)打開(kāi)MFCClassWizard對(duì)話(huà)框,并自動(dòng)切換到MessageMaps頁(yè)面。從“Classname”列表中選擇CMainFrame,在IDs列表中選擇ID_TEST_CHA

3、NGE,然后在Messages框中選擇COMMAND消息。5.1.1用編輯器設(shè)計(jì)菜單62.菜單命令的消息映射(2)單擊[AddFunction]按鈕或雙擊COMMAND消息,出現(xiàn)“AddMemberFunction”對(duì)話(huà)框以輸入成員函數(shù)的名稱(chēng)。系統(tǒng)默認(rèn)的函數(shù)名為OnTestChange,該函數(shù)是對(duì)菜單項(xiàng)ID_TEST_CHANGE(“測(cè)試”→“切換菜單”)的映射。5.1.1用編輯器設(shè)計(jì)菜單72.菜單命令的消息映射(3)單擊[OK]按鈕,在ClassWizard的“Memberfunctions”列表中將列出新增加

4、的成員函數(shù)。選擇此函數(shù),單擊[EditCode]按鈕(或直接在函數(shù)名雙擊鼠標(biāo)),在此成員函數(shù)中添加下列代碼:voidCMainFrame::OnTestChange(){//TODO:AddyourcommandhandlercodehereAfxMessageBox("現(xiàn)在就切換嗎?");}5.1.1用編輯器設(shè)計(jì)菜單8(4)編譯并運(yùn)行。在應(yīng)用程序的頂層菜單上,單擊“測(cè)試”菜單項(xiàng),然后將鼠標(biāo)移動(dòng)到彈出的子菜單項(xiàng)“切換菜單”上,則結(jié)果如圖所示,此時(shí)狀態(tài)欄上顯示該菜單項(xiàng)的提示信息,該信息就是在前圖的菜單項(xiàng)屬性對(duì)話(huà)框“

5、提示”框中設(shè)置的內(nèi)容。單擊“切換菜單”,則彈出一個(gè)消息對(duì)話(huà)框,顯示內(nèi)容“現(xiàn)在就切換嗎?”。5.1.1用編輯器設(shè)計(jì)菜單95.1.2使用鍵盤(pán)快捷鍵例:為前面菜單項(xiàng)ID_TEST_CHANGE定義鍵盤(pán)快捷鍵(1)展開(kāi)項(xiàng)目工作區(qū)窗口中Accelerator的資源項(xiàng),雙擊IDR_MAINFRAME,出現(xiàn)加速鍵資源列表。下端的空行105.1.2使用鍵盤(pán)快捷鍵(2)建立一個(gè)新的加速鍵時(shí),只要雙擊加速鍵列表的最下端的空行,彈出如圖所示的“AccelProperties”(加速鍵屬性)對(duì)話(huà)框,其中可設(shè)置的屬性如表所示115.1.2

6、使用鍵盤(pán)快捷鍵(3)在加速鍵屬性對(duì)話(huà)框中,先選擇在Ex_SDI應(yīng)用程序菜單資源添加的“切換菜單”菜單項(xiàng)ID_TEST_CHANGE作為要聯(lián)用的加速鍵的ID標(biāo)識(shí)符,然后單擊[下一鍵]按鈕,并按下Ctrl+1作為此加速鍵的鍵值。此外,還需在相應(yīng)的菜單項(xiàng)文本后面添加加速鍵內(nèi)容。例如,可將ID_TEST_CHANGE菜單項(xiàng)的標(biāo)題改成“切換菜單(&C)tCtrl+1”。(4)編譯運(yùn)行并測(cè)試。當(dāng)程序運(yùn)行后,按Ctrl+1鍵將執(zhí)行相應(yīng)的菜單命令。125.1.3菜單的編程控制CMenu類(lèi)1.創(chuàng)建菜單BOOLCreateMenu

7、();//產(chǎn)生一個(gè)空菜單BOOLCreatePopupMenu();//產(chǎn)生一個(gè)空的彈出式子菜單2.裝入菜單將菜單從資源裝入應(yīng)用程序中BOOLLoadMenu(LPCTSTRlpszResourceName);//lpszResourceName為菜單資源名稱(chēng)BOOLLoadMenu(UINTnIDResource);//nIDResource為菜單資源ID標(biāo)識(shí)符。135.1.3菜單的編程控制3.添加菜單項(xiàng)AppendMenu函數(shù):將菜單項(xiàng)添加在菜單的末尾處InsertMenu函數(shù):在指定位置處插入菜單項(xiàng),后面的

8、菜單項(xiàng)依次下移BOOLAppendMenu(UINTnFlags,UINTnIDNewItem=0,LPCTSTRlpszNewItem=NULL);//lpszNewItem為新菜單項(xiàng)的內(nèi)容BOOLAppendMenu(UINTnFlags,UINTnIDNewItem,constCBitmap*pBmp);//pBmp用于菜單項(xiàng)的位圖指針BOOLInsertMenu(

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

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

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶(hù)上傳,版權(quán)歸屬用戶(hù),天天文庫(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)完成后未能成功下載的用戶(hù)請(qǐng)聯(lián)系客服處理。