青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆-145  評論-173  文章-70  trackbacks-0

==============================================第二章===================================================

1.標記菜單的設計,如何初始化一個菜單,標記它是否選中。。
范例中,初始化某個菜單項,并在它的前面打鉤。

實現方法:
在CMainFrame中的OnCreate()函數中return 0前面添加代碼:
/*
GetMenu()是獲得當前窗口的菜單,而GetSubMenu則是獲得子菜單,其中參數為0表示的是第一個的,下面的CheckMenuItem則是標記或者取消
彈出的菜單,注意的是函數的第一個參數還是項數,后面的那個MF_BYPOSITION|MF_CHECKED則表示如何標記以及如何表示
*/
 GetMenu()->GetSubMenu(0)->CheckMenuItem(2,MF_BYPOSITION|MF_CHECKED); //初始化的時候將對應的菜單項打勾
其中,各個子函數的意義需要理解,后面可能會用到。


2.默認菜單中的字體粗體顯示。如何實現粗體顯示一個菜單中的項,這個作用當然是讓用戶知道默認的選擇項是什么了。

實現方法:
在CMainFrame中的OnCreate函數中添加代碼:

 GetMenu()->GetSubMenu(0)->SetDefaultItem(2,TRUE);
 GetMenu()->GetSubMenu(2)->SetDefaultItem(ID_VIEW_STATUS_BAR,FALSE);
其中關鍵就是函數>SetDefaultItem的使用,它有兩個參數,第一個和第二個的是由聯系的。
當第二個參數是FALSE的時候,第一個項表示對應的索引值(注意索引值是從0開始的)
當第二個參數是TRUE的時候,第一個項表示的是對應的ID表示。


3.圖形標記菜單,如何實現菜單中由圖形的顯示方式。
實現方式:
 m_bitmap1.LoadBitmap(IDB_BITMAP1);
 GetMenu()->GetSubMenu(0)->SetMenuItemBitmaps(0,MF_BYPOSITION,&m_bitmap1,&m_bitmap1);
 m_bitmap2.LoadBitmap(IDB_BITMAP2);
 GetMenu()->GetSubMenu(0)->SetMenuItemBitmaps(1,MF_BYPOSITION,&m_bitmap2,&m_bitmap2);
其中,變量m_bitmap1,m_bitmap2是自己在CMainFrame中添加的成員變量CBitmap類型的。然后在資源文件中添加了兩個Bitmap資源。
最后,在使用函數SetMenuItemBitmaps來導入到菜單中。。
介紹函數SetMenuItemBitmaps的使用方法:
BOOL SetMenuItemBitmaps( UINT nPosition, UINT nFlags, const CBitmap* pBmpUnchecked, const CBitmap* pBmpChecked );
nPosition

Specifies the menu item to be changed. The nFlags parameter can be used to interpret nPosition in the following ways:

nFlags

Specifies how nPosition is interpreted.

pBmpUnchecked

Specifies the bitmap to use for menu items that are not checked.

pBmpChecked

Specifies the bitmap to use for menu items that are checked.
注意:在設計位圖的時候,需要將大小設計為13 X 13像素的,否則顯示會出現問題。


4.如何使得菜單項不可用,屏蔽某些菜單,使得點擊的時候沒有相應的函數和操作可用。
實現代碼:
 m_bAutoMenuEnable = FALSE; //在CMainFrame的構造函數中設置,必須,否則無效
在OnCreate函數的代碼體中加入:
 GetMenu()->GetSubMenu(0)->EnableMenuItem(1,MF_BYPOSITION|MF_DISABLED|MF_GRAYED); //使得對應的菜單項無效。

 

5.如何使得菜單消失?通過函數SetMenu(NULL)實現。
添加一個菜單,然后建立想要的消息函數,在函數體內加入代碼,如下:
void CMainFrame::OnDis()
{
 // TODO: Add your command handler code here
 SetMenu(NULL);
}
注意,關于此類操作的函數,都是由CMainFrame作為主類的,函數都是在這個下面的操作。前面的基于菜單的操作也是,因為菜單的操作也是總體上

都是整體的一個操作。所以需要注意類屬關系。


6.使得單個菜單項失效或者生效。通過添加ID對應的消息,使得菜單生效和失效。
看代碼:
void CMainFrame::OnUpdateFileOpen(CCmdUI* pCmdUI)
{
 // TODO: Add your command update UI handler code here
 if(ID_FILE_OPEN == pCmdUI->m_nID)
  pCmdUI->Enable(FALSE); //失效
}

void CMainFrame::OnUpdateEditCut(CCmdUI* pCmdUI)
{
 // TODO: Add your command update UI handler code here
// if(ID_EDIT_CUT == pCmdUI->m_nID)
//  pCmdUI->Enable(TRUE); //生效
}

void CMainFrame::OnUpdateFileMruFile1(CCmdUI* pCmdUI)
{
 // TODO: Add your command update UI handler code here
 
 if(ID_FILE_MRU_FILE1 == pCmdUI->m_nID)
  pCmdUI->Enable(TRUE); //生效
}
對于某個具體的菜單項,在ClassWizard中CMainFrame中,找到ID對應的消息,然后添加函數,注意是
CN_UPDATE_COMMAND_UI消息,然后在函數中,使用上面的通用方法判斷。
if( ID == pCmdUI->m_nID)
 設置為生效或者失效。

從而,可以實現單個菜單項的生效或者失效。注意,前面的屏蔽菜單和這個的作用是相似的。不過函數不同,前面的那個是EnableMenuItem選項。

 

posted on 2010-02-10 16:18 deercoder 閱讀(738) 評論(0)  編輯 收藏 引用

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久在线免费观看视频| 亚洲欧美久久久| 蜜桃av久久久亚洲精品| 久久久精品午夜少妇| 国产一区二区三区最好精华液| 欧美一区91| 欧美在线观看一区二区| 国内精品久久久久伊人av| 久久伊人精品天天| 久久中文欧美| 一区二区三区|亚洲午夜| 欧美日韩在线看| 亚洲福利在线看| 欧美黑人一区二区三区| 欧美黄色免费网站| 亚洲色在线视频| 午夜精品久久一牛影视| 狠久久av成人天堂| 亚洲国产精品悠悠久久琪琪| 欧美猛交免费看| 欧美亚洲午夜视频在线观看| 久久久福利视频| 亚洲美女在线国产| 亚洲综合另类| 在线观看欧美黄色| 亚洲日本理论电影| 国产精品嫩草99a| 另类酷文…触手系列精品集v1小说| 久久一区二区精品| 国产精品99久久久久久久女警| 午夜视频久久久| 亚洲免费不卡| 亚洲欧美色一区| 亚洲青色在线| 香蕉av福利精品导航| 亚洲日产国产精品| 亚洲男女自偷自拍图片另类| 亚洲国产精品国自产拍av秋霞| 日韩一级精品| 尤物网精品视频| 一本色道久久综合亚洲精品不卡| 韩国女主播一区| 一区二区三区高清在线观看| 亚洲国产成人在线| 午夜精品久久久久久久99热浪潮 | 男女激情视频一区| 国产精品二区三区四区| 欧美国产精品va在线观看| 国产精品色婷婷| 亚洲欧洲精品成人久久奇米网| 欧美成年人在线观看| 久久久久综合网| 校园激情久久| 欧美日韩中文在线观看| 亚洲成色www久久网站| 国产亚洲网站| 午夜精品成人在线| 亚洲午夜久久久| 欧美成人一区二区在线 | 亚洲国产成人久久综合| 亚洲欧美成人网| 亚洲一区二区视频在线| 欧美二区在线| 欧美黑人在线观看| 亚洲黄色尤物视频| 久色成人在线| 亚洲福利视频网| 亚洲国产精品久久久久秋霞不卡 | 亚洲欧洲在线一区| 亚洲精品美女91| 欧美国产欧美综合| 亚洲国产成人精品女人久久久 | aa级大片欧美| 猫咪成人在线观看| 欧美激情中文字幕乱码免费| 亚洲国产婷婷| 欧美激情亚洲激情| 夜夜精品视频一区二区| 亚洲尤物精选| 国产精品一级| 久久蜜桃香蕉精品一区二区三区| 久久综合色8888| 亚洲三级免费| 国产精品都在这里| 午夜影院日韩| 欧美成人中文字幕在线| 亚洲精品在线一区二区| 欧美日韩一级黄| 亚洲欧美在线网| 麻豆av一区二区三区久久| 最新国产成人av网站网址麻豆| 欧美成人一品| 亚洲自拍偷拍一区| 美女视频网站黄色亚洲| 日韩视频在线一区| 国产精品欧美日韩| 久久久久久成人| 日韩视频在线观看国产| 欧美在线啊v| 亚洲精品少妇| 国产精品乱子久久久久| 久久久99精品免费观看不卡| 亚洲国产片色| 久久精品亚洲一区二区三区浴池| 在线观看欧美亚洲| 国产精品久久九九| 免播放器亚洲一区| 亚洲图片欧洲图片av| 欧美成人亚洲| 欧美一区二区日韩| 最新亚洲视频| 国产一区二区高清不卡| 欧美日韩hd| 久久视频在线视频| 亚洲一区二区三区在线| 欧美激情视频一区二区三区不卡| 亚洲欧美国产高清| 亚洲人成在线免费观看| 国产亚洲一区在线| 欧美视频精品在线| 欧美高清视频一二三区| 久久精品国产亚洲一区二区| 999在线观看精品免费不卡网站| 久久夜色精品国产欧美乱极品 | 精品成人在线视频| 国产精品每日更新| 欧美日韩mv| 免费亚洲婷婷| 久久久一区二区| 欧美一区二区三区日韩视频| 日韩视频在线一区| 亚洲激情图片小说视频| 久久永久免费| 久久久久一区二区三区四区| 午夜老司机精品| 亚洲在线一区| 一本久久综合| 夜夜嗨av一区二区三区中文字幕 | 国产精品扒开腿做爽爽爽视频| 免费成人av| 蜜桃av噜噜一区| 巨乳诱惑日韩免费av| 久久精品视频va| 久久都是精品| 久久久99免费视频| 久久国产欧美日韩精品| 久久国产一区二区| 欧美在线视频网站| 久久国产66| 久久婷婷亚洲| 欧美xx69| 欧美日韩国产成人高清视频| 欧美理论电影在线观看| 欧美极品在线观看| 欧美日韩在线精品| 国产精品美女久久久| 国产精品久久一卡二卡| 国产免费成人| 激情校园亚洲| 亚洲人成免费| 亚洲天堂av高清| 欧美在线观看网站| 久久综合激情| 欧美激情久久久久久| 亚洲毛片av| 亚洲中字黄色| 久久精品视频在线播放| 欧美高清视频| 国产精品久久久久久久久果冻传媒| 国产精品视频免费| 极品少妇一区二区三区精品视频| 亚洲电影视频在线| 中文精品视频一区二区在线观看| 亚洲小说欧美另类婷婷| 久久精品国产欧美激情| 欧美福利视频一区| a91a精品视频在线观看| 性欧美超级视频| 欧美激情一区二区三区蜜桃视频| 欧美色图五月天| 在线观看av不卡| 亚洲欧美日韩在线| 免费成人av资源网| 亚洲午夜av| 欧美aa在线视频| 国产日韩欧美在线| 亚洲欧洲一区二区在线观看| 亚洲综合视频一区| 欧美激情精品久久久久久久变态| aa级大片欧美三级| 久久夜色精品国产| 国产精品免费视频xxxx| 亚洲国产欧美日韩| 性久久久久久久久久久久| 亚洲国产精品成人一区二区| 亚洲欧美日韩综合aⅴ视频| 欧美精品电影| 黄色日韩精品| 久久国产毛片| 亚洲网站啪啪|