節(jié) 用戶界面設(shè)計(jì)選單工具欄和狀態(tài)欄PPT學(xué)習(xí)教案_第1頁(yè)
節(jié) 用戶界面設(shè)計(jì)選單工具欄和狀態(tài)欄PPT學(xué)習(xí)教案_第2頁(yè)
節(jié) 用戶界面設(shè)計(jì)選單工具欄和狀態(tài)欄PPT學(xué)習(xí)教案_第3頁(yè)
節(jié) 用戶界面設(shè)計(jì)選單工具欄和狀態(tài)欄PPT學(xué)習(xí)教案_第4頁(yè)
節(jié) 用戶界面設(shè)計(jì)選單工具欄和狀態(tài)欄PPT學(xué)習(xí)教案_第5頁(yè)
已閱讀5頁(yè),還剩30頁(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、會(huì)計(jì)學(xué)1 節(jié)節(jié) 用戶界面設(shè)計(jì)選單工具欄和狀態(tài)欄用戶界面設(shè)計(jì)選單工具欄和狀態(tài)欄 菜單顯示一般要遵循的一些規(guī)則:菜單顯示一般要遵循的一些規(guī)則: 菜單欄中某菜單項(xiàng)需要助記符,則用:菜單項(xiàng)文本菜單欄中某菜單項(xiàng)需要助記符,則用:菜單項(xiàng)文本 后跟(后跟(字母字母)。如在)。如在Word中,中,“文件(文件(F)”表示用表示用 Alt+F組合鍵選中組合鍵選中“文件文件”菜單命令。菜單命令。 若某菜單項(xiàng)需要快捷鍵,則一般將其放在相應(yīng)菜單若某菜單項(xiàng)需要快捷鍵,則一般將其放在相應(yīng)菜單 項(xiàng)文本后。項(xiàng)文本后。快捷鍵快捷鍵/加速鍵(加速鍵(Accelerator:一種:一種資源資源) 就是一組合鍵,按下快捷鍵表示執(zhí)行相

2、應(yīng)的菜單命令。就是一組合鍵,按下快捷鍵表示執(zhí)行相應(yīng)的菜單命令。 如在如在Word中,按下中,按下Ctrl+N,表示執(zhí)行,表示執(zhí)行新建新建菜單菜單 命令。命令。 第2頁(yè)/共35頁(yè)第1頁(yè)/共35頁(yè) 1、編輯菜單、編輯菜單 編輯菜單資源:編輯菜單資源: (1) 選擇工程工作區(qū)的選擇工程工作區(qū)的ResourceView卡片,切換到資源視圖。卡片,切換到資源視圖。 (2) 選擇菜單資源類型選擇菜單資源類型Menu。 (3) 選定菜單資源選定菜單資源IDR_MAINFRAME,雙擊該項(xiàng),彈出菜單編輯,雙擊該項(xiàng),彈出菜單編輯 器窗口。器窗口。 (4) 編輯當(dāng)前菜單編輯當(dāng)前菜單 插入新菜單項(xiàng),可選定窗口中的空

3、白菜單框上雙擊,彈出屬性對(duì)話插入新菜單項(xiàng),可選定窗口中的空白菜單框上雙擊,彈出屬性對(duì)話 框,用于輸入菜單項(xiàng)的標(biāo)題、標(biāo)識(shí)符、菜單項(xiàng)在狀態(tài)欄上顯示的提框,用于輸入菜單項(xiàng)的標(biāo)題、標(biāo)識(shí)符、菜單項(xiàng)在狀態(tài)欄上顯示的提 示(示(Prompt)等;也可拖動(dòng)空白菜單到制定地方,然后雙擊該菜)等;也可拖動(dòng)空白菜單到制定地方,然后雙擊該菜 單項(xiàng)進(jìn)行編輯;要插入一個(gè)單項(xiàng)進(jìn)行編輯;要插入一個(gè)分隔線分隔線,只需將菜單項(xiàng)的,只需將菜單項(xiàng)的Seperator屬屬 性打開即可。性打開即可。 第3頁(yè)/共35頁(yè)第2頁(yè)/共35頁(yè) 2、菜單命令消息、菜單命令消息 菜單命令消息常用的有兩個(gè): WM_COMMAND(命令消息命令消息) W

4、M_COMMAND_UI(更新命令用戶接口消息 /更新命令更新命令UIUI消息消息)。 第4頁(yè)/共35頁(yè)第3頁(yè)/共35頁(yè) WM_COMMANDWM_COMMAND(命令消息)(命令消息): : 由選擇菜單命令項(xiàng)或按下快捷鍵或一般控件或由選擇菜單命令項(xiàng)或按下快捷鍵或一般控件或 工具欄按鈕(當(dāng)工具欄按鈕(當(dāng)IDID號(hào)與菜單項(xiàng)的號(hào)與菜單項(xiàng)的IDID同名時(shí))等同名時(shí))等 用 戶 交 互 對(duì) 象 發(fā) 出 。 其 消 息 映 射 宏 名 為用 戶 交 互 對(duì) 象 發(fā) 出 。 其 消 息 映 射 宏 名 為 ON_COMMANDON_COMMAND。 ON_COMMAND ON_COMMAND 消息消息映射

5、宏的作用為在用戶選擇該映射宏的作用為在用戶選擇該 菜單項(xiàng)時(shí)調(diào)用指定的命令處理函數(shù)。菜單項(xiàng)時(shí)調(diào)用指定的命令處理函數(shù)。 如:如:ON_COMMAND(IDM_COMMAND1, OnCommand1)ON_COMMAND(IDM_COMMAND1, OnCommand1) 會(huì)使會(huì)使IDID號(hào)為號(hào)為IDM_COMMAND1IDM_COMMAND1的菜單被選擇時(shí)調(diào)用的菜單被選擇時(shí)調(diào)用 OnCommand1OnCommand1成員函數(shù)(命令處理函數(shù))。成員函數(shù)(命令處理函數(shù))。 第5頁(yè)/共35頁(yè)第4頁(yè)/共35頁(yè) WM_UPDATE_COMMAND_UIWM_UPDATE_COMMAND_UI(更新命令用

6、戶接口消更新命令用戶接口消 息息/更新命令更新命令UIUI消息消息): 許多情況彈出式菜單的菜單項(xiàng)可能有多個(gè)狀態(tài),許多情況彈出式菜單的菜單項(xiàng)可能有多個(gè)狀態(tài), 如某個(gè)時(shí)刻正??捎茫ㄕH缒硞€(gè)時(shí)刻正??捎茫ㄕ? /允許),而某個(gè)時(shí)允許),而某個(gè)時(shí) 刻不可用(變灰刻不可用(變灰/ /禁止),還可以加標(biāo)記(打禁止),還可以加標(biāo)記(打 鉤),以表明被選中或未被選中。鉤),以表明被選中或未被選中。 MFCMFC的更新命令用戶接口消息為自動(dòng)更新用戶接的更新命令用戶接口消息為自動(dòng)更新用戶接 口 提 供 了 方 便 。 其 消 息 映 射 宏 名 為口 提 供 了 方 便 。 其 消 息 映 射 宏 名 為

7、ON_UPDATE_COMMAND_UION_UPDATE_COMMAND_UI。 第6頁(yè)/共35頁(yè)第5頁(yè)/共35頁(yè) 第7頁(yè)/共35頁(yè)第6頁(yè)/共35頁(yè) 例例2:在對(duì)話框中使用菜單:在對(duì)話框中使用菜單 新建一個(gè)菜單資源,將該菜單引入到對(duì)話框中,并加入新建一個(gè)菜單資源,將該菜單引入到對(duì)話框中,并加入 相應(yīng)的消息響應(yīng)函數(shù)。相應(yīng)的消息響應(yīng)函數(shù)。 第8頁(yè)/共35頁(yè)第7頁(yè)/共35頁(yè) 第9頁(yè)/共35頁(yè)第8頁(yè)/共35頁(yè) 第10頁(yè)/共35頁(yè)第9頁(yè)/共35頁(yè) 6.2 工具條工具條 1 工具條簡(jiǎn)介工具條簡(jiǎn)介 工具條工具條可以看作是圖形化的菜單,是一種可以看作是圖形化的菜單,是一種 更快捷、更有效、更直觀的命令輸入方

8、式更快捷、更有效、更直觀的命令輸入方式 工具條工具條作為程序的一個(gè)資源作為程序的一個(gè)資源, ,一般存放在資一般存放在資 源腳本中,在程序運(yùn)行時(shí)才調(diào)用源腳本中,在程序運(yùn)行時(shí)才調(diào)用 第11頁(yè)/共35頁(yè)第10頁(yè)/共35頁(yè) 2 CToolBar類類 C CT To oo ol lB Ba ar r 的的構(gòu)構(gòu)造造方方法法 方方法法說(shuō)說(shuō)明明 C Cr re ea at te e( () )創(chuàng)創(chuàng)建建一一個(gè)個(gè)工工具具條條并并把把它它附附加加到到C CT To oo ol lB Ba ar r 對(duì)對(duì)象象上上 C Cr re ea at te eE Ex x( () )創(chuàng)創(chuàng)建建一一個(gè)個(gè)定定義義了了邊邊界界的的工工

9、具具條條并并把把它它附附加加到到C CT To oo ol lB Ba ar r 對(duì)對(duì)象象上上 S Se et tS Si iz ze es s( () )設(shè)設(shè)置置按按鈕鈕及及位位圖圖大大小小 S Se et tH He ei ig gh ht t( () )設(shè)設(shè)置置工工具具條條的的高高度度 L Lo oa ad dT To oo ol lB Ba ar r( () )裝裝載載工工具具條條資資源源 L Lo oa ad dB Bi it tm ma ap p( () )裝裝載載包包含含工工具具按按鈕鈕圖圖像像的的位位圖圖 S Se et tB Bi it tm ma ap p( () )設(shè)設(shè)置

10、置位位圖圖圖圖像像 S Se et tB Bu ut tt to on ns s( () )設(shè)設(shè)置置按按鈕鈕并并使使每每個(gè)個(gè)按按鈕鈕與與位位圖圖圖圖像像相相關(guān)關(guān)。 第12頁(yè)/共35頁(yè)第11頁(yè)/共35頁(yè) 3 已有工具條的使用已有工具條的使用 n1) 打開工具條資源打開工具條資源 n2) 單擊工具條最右側(cè)的空白工具按鈕單擊工具條最右側(cè)的空白工具按鈕 n 3) 編輯工具按鈕編輯工具按鈕 n 4) 給工具按鈕添加消息響應(yīng)函數(shù)給工具按鈕添加消息響應(yīng)函數(shù) n示例演示示例演示 第13頁(yè)/共35頁(yè)第12頁(yè)/共35頁(yè) 4 工具條函數(shù)簡(jiǎn)介工具條函數(shù)簡(jiǎn)介 1) Create()函數(shù)函數(shù) BOOL CreateBOO

11、L Create ( ( CWndCWnd* * pParentWnd, pParentWnd, /pParentWnd/pParentWnd為指向工具條所在父窗口的指針為指向工具條所在父窗口的指針 DWORD dwStyle=WS_CHILD|WS_VISIBLE|CBRS_TOP, / dwStyleDWORD dwStyle=WS_CHILD|WS_VISIBLE|CBRS_TOP, / dwStyle為工具條的風(fēng)格為工具條的風(fēng)格 UINT nID = AFX_IDW_TOOLBAR UINT nID = AFX_IDW_TOOLBAR /nID/nID表示工具條子窗口的表示工具條子窗口

12、的IDID號(hào)號(hào) );); 第14頁(yè)/共35頁(yè)第13頁(yè)/共35頁(yè) 2) LoadToolBar()函數(shù)函數(shù) BOOL LoadToolBar(LPCTSTR lpszResourceName); /BOOL LoadToolBar(LPCTSTR lpszResourceName); /字符串形式定義的資源字符串形式定義的資源 BOOL LoadToolBar(UINT nIDResource); BOOL LoadToolBar(UINT nIDResource); / /整型形式定義的資源整型形式定義的資源 3) SetBarStyle()函數(shù)函數(shù) m_wndToolBar.SetBarSt

13、yle(m_wndToolBar.SetBarStyle(CBRS_TOOLTIPSCBRS_TOOLTIPS| |CBRS_FLYBYCBRS_FLYBY| | CBRS_SIZE_DYNAMICCBRS_SIZE_DYNAMIC);); WS_VISIBLEWS_VISIBLE使工具條窗口初始可見使工具條窗口初始可見 CBRS_BOTTOMCBRS_BOTTOM初始時(shí)將工具條放到窗口底部初始時(shí)將工具條放到窗口底部 CBRS_FLYBYCBRS_FLYBY鼠標(biāo)光標(biāo)在按鈕上暫停時(shí),顯示命令描鼠標(biāo)光標(biāo)在按鈕上暫停時(shí),顯示命令描 述述 CBRS_NOALIGNCBRS_NOALIGN防止控制條在其

14、父窗口改變大小時(shí)被復(fù)防止控制條在其父窗口改變大小時(shí)被復(fù) 位位 CBRS_TOOLTIPSCBRS_TOOLTIPS鼠標(biāo)光標(biāo)在按鈕上暫停時(shí),顯示工具提示鼠標(biāo)光標(biāo)在按鈕上暫停時(shí),顯示工具提示 CBRS_TOPCBRS_TOP初始時(shí)將工具條放在窗口頂部初始時(shí)將工具條放在窗口頂部 CBRS_SIZE_DYNAMICCBRS_SIZE_DYNAMIC工具條的大小可變工具條的大小可變 第15頁(yè)/共35頁(yè)第14頁(yè)/共35頁(yè) 4) 工具條的移動(dòng)工具條的移動(dòng) 為使用戶能夠移動(dòng)工具條,為此,需向工具條及框架窗口發(fā)送消息為使用戶能夠移動(dòng)工具條,為此,需向工具條及框架窗口發(fā)送消息 。這可通過(guò)調(diào)用。這可通過(guò)調(diào)用CToo

15、lBar:EnableDockingCToolBar:EnableDocking和和Frame:EnableDockingFrame:EnableDocking 實(shí)現(xiàn)。實(shí)現(xiàn)。 二函數(shù)原型均如下:二函數(shù)原型均如下: void EnableDocking( DWORD dwStyle );void EnableDocking( DWORD dwStyle ); 工具條停靠風(fēng)格 風(fēng)格意義 CBRS_ALIGN_TOP工具條可在客戶區(qū)頂端移動(dòng) CBRS_ALIGN_BOTTOM工具條可在客戶區(qū)底端移動(dòng) CBRS_ALIGN_LEFT工具條可在客戶區(qū)左端移動(dòng) CBRS_ALIGN_RIGHT工具條可在客

16、戶區(qū)右端移動(dòng) CBRS_ALIGN_ANY工具條可在客戶區(qū)任意位置移動(dòng) CBRS_FLOAT_MULTI允許在一窗口內(nèi)存在多個(gè)可移動(dòng)控制條 對(duì)于對(duì)于CFrame不可用不可用 ??客??風(fēng)格風(fēng)格 第16頁(yè)/共35頁(yè)第15頁(yè)/共35頁(yè) 5 新增工具條的使用新增工具條的使用 n1) 創(chuàng)建工具欄資源;創(chuàng)建工具欄資源; n2)在邊框窗口類的聲明中添加:)在邊框窗口類的聲明中添加: CToolBar m_myToolBar; n3) 在在OnCreate函數(shù)中增加:函數(shù)中增加: nif (!m_myToolBar.Create(this) | n !m_myToolBar.LoadToolBar(IDR_

17、TOOLBAR1) n nTRACE0(Failed to create toolbarn); nreturn -1; / fail to create n m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY ); m_myToolBar.EnableDocking(CBRS_ALIGN_ANY); EnableDocking(CBRS_ALIGN_ANY); DockControlBar( DockControlBar( 第17頁(yè)/共35頁(yè)第16頁(yè)/共35頁(yè) 第18頁(yè)/共35頁(yè)第17頁(yè)/共35頁(yè) n指示器窗格指示器窗格 第19頁(yè)/共35頁(yè)第18頁(yè)/共35頁(yè) n; 第20頁(yè)/共35頁(yè)第19頁(yè)/共35頁(yè) n增加信息行窗格增加信息行窗格: u在在indicators數(shù)組中增加數(shù)組中增加ID_SEPARATOR標(biāo)識(shí)標(biāo)識(shí) n增加指示器窗格:增加指示器窗格: u在String Table中加入新ID,Caption中加空格 或字符串,字符串的長(zhǎng)度表示用戶指示器窗格的大小字符串,字符串的長(zhǎng)度表示用戶指示器窗格的大小 u在在indicators數(shù)組中增加在數(shù)組中增加在String Table中定義過(guò)的中定義過(guò)的ID n減少窗格減少窗格 u減少減少indicators數(shù)組中的元素即可數(shù)組中的元素即可 第21

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論