菜單、工具欄和狀態(tài)欄

菜單、工具欄和狀態(tài)欄

ID:40801266

大?。?85.10 KB

頁數(shù):33頁

時間:2019-08-07

菜單、工具欄和狀態(tài)欄_第1頁
菜單、工具欄和狀態(tài)欄_第2頁
菜單、工具欄和狀態(tài)欄_第3頁
菜單、工具欄和狀態(tài)欄_第4頁
菜單、工具欄和狀態(tài)欄_第5頁
資源描述:

《菜單、工具欄和狀態(tài)欄》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在教育資源-天天文庫。

1、第6章菜單、工具欄和狀態(tài)欄6.1菜單6.2工具欄6.3狀態(tài)欄1第6章菜單、工具欄和狀態(tài)欄6.1菜單6.2工具欄6.3狀態(tài)欄26.1菜單(1of11)對于菜單的顯示都遵循下列一些規(guī)則:若某菜單項標題后有“…”,那么在點擊某菜單項會彈出一對話框。若某項菜單有子菜單,那么在該菜單項文本后有“?”。菜單項需要助記符,用括號將帶下劃線的字母括起來。助記符與Alt構成一個組合鍵,當按住“Alt”鍵不放,再敲擊該字母時,對應的菜單項就會被選中。若某項菜單需要快捷鍵的支持,則一般將其列在相應菜單項文本之后。任何時候按下快捷鍵,相應的菜單命令都會被執(zhí)行。圖6.1File菜單36.1菜單(2o

2、f11)6.1.1用編輯器設計菜單編輯菜單在菜單的空位置上雙擊鼠標左鍵,則出現(xiàn)它的屬性對話框,如圖。圖6.2菜單編輯器菜單的空位置圖6.3菜單屬性對話框46.1菜單(3of11)56.1菜單(4of11)需要注意的是:當菜單項的屬性中選中了Pop_up(該菜單包含子菜單)時,對話框中ID、Separator和Prompt項無效。增加新的菜單項后,用戶可以用鼠標將菜單項拖到其他位置,而當菜單項位置改變時,其屬性并不改變。菜單項被拖動的位置圖6.4拖動菜單項圖6.5添加的菜單項66.1菜單(5of11)菜單命令的消息映射[例Ex_Mmenu]“成績輸入”菜單項的映射。(1)進入

3、MFCClassWizard對話框,切換到MessageMaps頁面。(2)從“Classname”列表中選擇CMainFrame,在IDs列表中選擇ID_SCORE_IN,然后在Messages框中選擇COMMAND消息,如圖。圖6.6消息的選擇76.1菜單(6of11)(3)單擊[AddFunction]按鈕或雙擊COMMAND消息,輸入成員函數(shù)的名稱。如圖6.7所示。(4)單擊[OK]。選擇新增加的成員函數(shù),單擊[EditCode]按鈕(或直接在函數(shù)名雙擊鼠標左鍵),就可以在此成員函數(shù)中添加一些代碼。例如:voidCMainFrame::OnScoreIn(){//T

4、ODO:AddyourcommandhandlercodehereAfxMessageBox("現(xiàn)在就輸入成績嗎?");}(5)編譯并運行。在應用程序的頂層菜單上,單擊“成績輸入”菜單項或按Alt+S組合鍵,如圖6.8所示。圖6.7添加成員函數(shù)對話框圖6.8菜單命令執(zhí)行的結果86.1菜單(7of11)6.1.2使用鍵盤快捷鍵(1)先打開上例的項目工作區(qū)窗口中Accelerator的資源項,雙擊IDR_MAINFRAME,如圖。圖6.9示例Ex_Sdi的加速鍵資源最下端的空行96.1菜單(8of11)(2)要建立一新的加速鍵,雙擊加速鍵列表的最下端的空行,如圖6.10,其中可

5、設置的屬性如表6.2。(3)在上述對話框中,選擇ID_SCORE_IN作為要設定快捷鍵的ID號,單擊[NextKeyTyped],按下Ctrl+1作為此加速鍵的鍵值。圖6.10“AccelProperities”對話框106.1菜單(9of11)6.1.3使用快捷菜單——右鍵菜單用資源編輯器和MFC庫的CMenu::TrackPopupMenu函數(shù)可以創(chuàng)建快捷菜單。CMenu::TrackPopupMenu函數(shù)原型如下:BOOLTrackPopupMenu(UINTnFlags,intx,inty,CWnd*pWnd,LPCRECTlpRect=NULL);其中:x和y表示

6、菜單頂端(一般為左上角)的水平坐標和垂直坐標。pWnd表示彈出菜單的窗口。lpRect是一個RECT結構或CRect對象指針,表示一個矩形區(qū)域,不在該區(qū)域單擊鼠標時,則彈出菜單消失;當lpRect為NULL時,若擊在菜單外面,菜單立刻消失。116.1菜單(10of11)[例Ex_Menu]創(chuàng)建彈出菜單。(1)選擇“Insert”菜單?“Resource”命令,為應用程序添加一個新的菜單資源。(2)用菜單編輯器,為該菜單資源中的頂層菜單的第一項加一任意標題(實際上該標題無任何作用),在此菜單項下依次添加如下表所示的菜單項。(3)將此菜單資源ID號改為IDR_MYFLOATME

7、NU(默認的ID號為IDR_MENU1)。(4)按Ctrl+W快捷鍵打開ClassWizard,將出現(xiàn)一對話框,詢問是“選擇一個已存在的類”,還是“創(chuàng)建一個新類”。選擇“選擇一個已存在的類”項并選定CMainFrame類。126.1菜單(11of11)(5)在CMainFrame類中,選擇上表中所列的菜單ID,雙擊COMMAND消息。這里僅為菜單ID_MENU_SCOREIN映射COMMAND消息,添加代碼:voidCMainFrame::OnMenuScorein(){AfxMessageBox("現(xiàn)在就輸入成績

當前文檔最多預覽五頁,下載文檔查看全文

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

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