C++實用教程課件-張榮梅 第5章菜單工具欄和狀態(tài)欄

C++實用教程課件-張榮梅 第5章菜單工具欄和狀態(tài)欄

ID:40238184

大?。?42.00 KB

頁數(shù):52頁

時間:2019-07-28

C++實用教程課件-張榮梅 第5章菜單工具欄和狀態(tài)欄_第1頁
C++實用教程課件-張榮梅 第5章菜單工具欄和狀態(tài)欄_第2頁
C++實用教程課件-張榮梅 第5章菜單工具欄和狀態(tài)欄_第3頁
C++實用教程課件-張榮梅 第5章菜單工具欄和狀態(tài)欄_第4頁
C++實用教程課件-張榮梅 第5章菜單工具欄和狀態(tài)欄_第5頁
資源描述:

《C++實用教程課件-張榮梅 第5章菜單工具欄和狀態(tài)欄》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、第5章菜單、 工具欄和狀態(tài)欄河北經(jīng)貿(mào)大學(xué)信息技術(shù)學(xué)院1教學(xué)目標了解菜單、工具欄和狀態(tài)欄的概念及相關(guān)類的基本操作;掌握Windows編程中資源的使用;能夠在單文檔和對話框應(yīng)用程序中編程實現(xiàn)常用的菜單、工具欄和狀態(tài)欄。25.1菜單菜單概述用編輯器設(shè)計菜單菜單類CMenu快捷菜單的設(shè)計與使用示例3菜單菜單是Windows中最常見的界面元素,是一系列命令的列表。菜單分為兩種:下拉菜單快捷菜單(上下文菜單)加速鍵是鍵盤上的一個鍵或幾個鍵的組合,它通常對應(yīng)于某一條菜單命令或工具按鈕命令,它為用戶提供了一種快速執(zhí)行菜單命令或其他某種功能的方法。4使用菜單編輯器,可以增加或刪除菜單

2、和菜單項,定義菜單標識符ID,對菜單進行合理布局,設(shè)置菜單的初始狀態(tài)(正常、灰色、加標記等)設(shè)置菜單提示等。使用AppWizard創(chuàng)建基于SDI的應(yīng)用程序框架時,會自動創(chuàng)建一個菜單資源:IDR_MAINFRAME使用AppWizard創(chuàng)建基于MDI的應(yīng)用程序框架時,會自動創(chuàng)建兩個菜單資源:IDR_MAINFRAME和IDR_***TYPE(星號表示項目名)在菜單編輯器中,可以對AppWizard生成的菜單進行修改,也可以從空白菜單基礎(chǔ)上創(chuàng)建需要的菜單用編輯器設(shè)計菜單5創(chuàng)建下拉菜單的步驟:創(chuàng)建菜單資源打開菜單編輯器,編輯菜單:在菜單欄中雙擊空白方框,彈出[MenuIt

3、emProperties]對話框,設(shè)置菜單項屬性。為菜單資源選擇一個類(視圖類或?qū)υ捒蝾?建立菜單命令消息處理函數(shù)WM_COMMAND:選擇菜單項或使用快捷鍵時將產(chǎn)生此消息UPDATE_COMMAND_UI:更新命令用戶接口消息,當菜單在顯示之前,會先通過此消息進行更新,從而得到更新后的菜單。6【例5.1】單文檔應(yīng)用程序中菜單的創(chuàng)建和使用在單文檔應(yīng)用程序的默認菜單資源中添加一個“繪圖”菜單,通過“繪圖”菜單命令在窗口中繪制出不同的橢圓和矩形,程序的運行效果如圖所示。7步驟:1、創(chuàng)建一個基于SDI的應(yīng)用程序,項目名為:EX5_12、在項目工作區(qū)的[ResourceVi

4、ew]中,雙擊菜單資源[IDR_MAINFRAME],打開菜單資源編輯器。3、在[幫助]菜單前插入一個新菜單[繪圖(&D)],并為其添加相應(yīng)的菜單項,如圖所示Alt+D激活該菜單8菜單屬性設(shè)置CaptionID提示(Prompt)橢圓Pop-up矩形Pop-up清除(&C)ID_DRAW_CLEAR清除窗口中的圖形100*100ID_DRAW_ELLIPSE1繪制一個外接矩形為100*100的橢圓100*200ID_DRAW_ELLIPSE2繪制一個外接矩形為100*200的橢圓100*100ID_DRAW_RECT1繪制一個100*100的矩形100*200ID_

5、DRAW_RECT2繪制一個100*200的矩形94、為菜單資源選擇一個類CEX5_1View5、使用[MFCClassWizard],為視圖類CEX5_1View添加菜單消息處理函數(shù).ObjectIds消息消息處理函數(shù)ID_DRAW_CLEARCOMMANDOnDrawClear()ID_DRAW_ELLIPSE1COMMANDOnDrawEllipse1()ID_DRAW_ELLIPSE2COMMANDOnDrawEllipse2()ID_DRAW_RECT1COMMANDOnDrawRect1()ID_DRAW_RECT2COMMANDOnDrawRect2(

6、)106、為消息處理函數(shù)添加代碼繪制一個外接矩形為100*100的橢圓voidCEX5_1View::OnDrawEllipse1(){//TODO:AddyourcommandhandlercodehereCDC*pDC=GetDC();//獲取窗口設(shè)備環(huán)境CRectr,rect;//定義矩形類對象GetClientRect(&r);//獲取客戶區(qū)窗口坐標范圍rect.bottom=r.bottom/2+50;//設(shè)置rect的范圍rect.top=r.bottom/2-50;rect.right=r.right/2+50;rect.left=r.right/2-

7、50;pDC->Ellipse(rect);//在rect指定的范圍內(nèi)畫橢圓}r.bottom505011繪制一個100*100的矩形voidCEX5_1View::OnDrawRect1(){//TODO:AddyourcommandhandlercodehereCDC*pDC=GetDC();//獲取窗口設(shè)備CRectr,rect;//定義矩形類對象GetClientRect(&r);//獲取客戶區(qū)窗口坐標范圍rect.bottom=r.bottom/2+50;//設(shè)置rect的范圍rect.top=r.bottom/2-50;rect.right=r.ri

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

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

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