工學(xué)第7章菜單程序設(shè)計(jì)課件_第1頁(yè)
工學(xué)第7章菜單程序設(shè)計(jì)課件_第2頁(yè)
工學(xué)第7章菜單程序設(shè)計(jì)課件_第3頁(yè)
工學(xué)第7章菜單程序設(shè)計(jì)課件_第4頁(yè)
工學(xué)第7章菜單程序設(shè)計(jì)課件_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1 第7章 菜單程序設(shè)計(jì) 本章主要內(nèi)容:菜單簡(jiǎn)介菜單中的ID3) 菜單加速鍵4) 添加新菜單5) 定義菜單項(xiàng)的命令消息處理函數(shù)6) 實(shí)現(xiàn)菜單控制2022/7/272 7.1 菜單簡(jiǎn)介 菜單是一系列命令的列表,是最常用的命令輸入方式。在Windows中,幾乎所有的操作都與菜單有關(guān)。當(dāng)用戶選擇菜單項(xiàng)目后能實(shí)現(xiàn)相應(yīng)的功能,實(shí)際上是向窗口對(duì)象發(fā)送了命令消息,系統(tǒng)調(diào)用相應(yīng)的消息處理函數(shù)來(lái)實(shí)現(xiàn)相應(yīng)的功能。 Windows應(yīng)用程序中的菜單是按照一定層次結(jié)構(gòu)組織的,包括頂層菜單和彈出菜單,其中,彈出菜單又包括菜單項(xiàng)和其它的彈出菜單。2022/7/2737.2 菜單中的ID 菜單中的每個(gè)菜單項(xiàng)都由菜單項(xiàng)名和ID

2、兩個(gè)基本要素組成,如下圖所示。在菜單資源中,每個(gè)菜單項(xiàng)必須有一個(gè)唯一的ID號(hào)對(duì)它進(jìn)行標(biāo)記,這個(gè)ID號(hào)是系統(tǒng)對(duì)菜單項(xiàng)進(jìn)行識(shí)別時(shí)使用的。 2022/7/274 設(shè)計(jì)一個(gè)單文檔程序 在Workspace中打開(kāi)Menu, 雙擊 IDR_MAIN_FRAME: 得到應(yīng)用程序缺省菜單資源。2022/7/275 右擊Workspace的IDR_MAINFRAME, 選Properties, 得菜單屬性對(duì)話框,也可以雙擊。2022/7/276 雙擊菜單空白: 支持ALT+S快捷鍵, 選Pop-up: 包含子菜單。2022/7/277 按住拖動(dòng)菜單到適當(dāng)位置,雙擊下拉菜單。2022/7/2787.3. 菜單加速

3、鍵 在圖所示的界面中,選擇Resource View選擇卡中的My resources下的菜單資源Menu,在主菜單IDR_MAINFRAME上雙擊,調(diào)出菜單資源編輯器。使用菜單資源編輯器為主菜單添加一列新菜單,如圖所示。2022/7/279 設(shè)計(jì)一個(gè)單文檔程序 在Workspace中打開(kāi)Menu, 雙擊 IDR_MAIN_FRAME: 得到應(yīng)用程序缺省菜單資源。2022/7/2710 右擊Workspace的IDR_MAINFRAME, 選Properties, 得菜單屬性對(duì)話框。2022/7/2711 雙擊菜單空白: 支持ALT+S快捷鍵 選Pop-up: 包含子菜單。2022/7/271

4、2 按住拖動(dòng)菜單到適當(dāng)位置,雙擊下拉菜單。2022/7/2713 添加快捷鍵:在Workspace中,雙擊Accelerator下的IDR_MAINFRAME. 右擊鍵,選NEW Accelerator 修改加速鍵2022/7/27142022/7/27157.4 添加新菜單: 在如圖所示的界面中,選擇菜單資源Menu,單擊右鍵。在彈出菜單中選擇“插入Menu”菜單項(xiàng),為當(dāng)前工程插入新菜單IDR_My1,如圖所示。2022/7/27 16 插入新菜單2022/7/27 17 雙擊2022/7/27 18 右擊2022/7/27 19 雙擊2022/7/27207.5. 定義菜單項(xiàng)的命令消息處理

5、函數(shù) 1. 命令消息 作為用戶接口對(duì)象,菜單項(xiàng)被用戶選擇后,會(huì)觸發(fā)WM_COMMAND命令消息,命令消息可以被文檔類(lèi)、應(yīng)用程序類(lèi)、視圖類(lèi)、窗口類(lèi)等多種對(duì)象接收、處理。用戶編程時(shí),可以通過(guò)選擇“查看”菜單下的“建立類(lèi)向?qū)А辈藛雾?xiàng),為菜單項(xiàng)的命令消息映射。2022/7/2721 對(duì)于每一個(gè)菜單項(xiàng),在MFC Class Wizard的Messages下拉列表框中都提供了:COMMAND和UPDATE_COMMAND_UI兩種消息,其中,COMMAND為命令消息,主要處理用戶的單擊操作,UPDATE_COMMAND_UI為更新命令用戶接口消息,主要使菜單項(xiàng)有效, 無(wú)效或給菜單項(xiàng)動(dòng)態(tài)添加檢查標(biāo)記等。 當(dāng)

6、用戶選擇菜單項(xiàng)時(shí),會(huì)觸發(fā)命令消息,命令消息沒(méi)有默認(rèn)的消息處理函數(shù),程序員必須自己定義每個(gè)菜單項(xiàng)的命令消息處理函數(shù),并實(shí)現(xiàn)該消息的處理函數(shù)。2022/7/2722命令消息處理更新命令用戶接口消息2022/7/27232. 創(chuàng)建菜單應(yīng)用程序: 設(shè)計(jì)一個(gè)單文檔程序 在Workspace中打開(kāi)Menu, 雙擊 IDR_MAIN_FRAME: 得到應(yīng)用程序缺省菜單資源。2022/7/2724 右擊Workspace的IDR_MAINFRAME, 選Properties, 得菜單屬性對(duì)話框。2022/7/2725 雙擊菜單空白: 支持ALT+S快捷鍵 選Pop-up: 包含子菜單。2022/7/2726 按住拖動(dòng)菜單到適當(dāng)位置,雙擊下拉菜單。2022/7/2727 添加快捷鍵:在Workspace中,雙擊Accelerator下的IDR_MAINFRAME. 右擊鍵,選NEW Accelerator修改加速鍵2022/7/27282022/7/27297.6 實(shí)現(xiàn)菜單控制 菜單控制指通過(guò)菜單選項(xiàng),向應(yīng)用程序發(fā)送命令,應(yīng)用程序處理消息。 在“計(jì)算”欄右擊鍵,選ClassWizard.2022/7/2730 Class name 確定應(yīng)用程序的位置,由于應(yīng)用程序收到消息后,并不能確定應(yīng)用程序的位置,按以下class順序搜索: view Doc Sdi Mdi 子框架 主框架2022/7/2731

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論