怎么用VC++5在菜單中增加位圖或圖標(biāo)
發(fā)表時(shí)間:2023-08-13 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]我們在使用Windows 95時(shí),可以注意到在“開始”組中的菜單項(xiàng)前都有一個(gè)圖標(biāo),而且在Word 97中的菜單項(xiàng)前也有一個(gè)圖標(biāo)。這些圖標(biāo)不但讓我們清楚地了解到屏幕上的各種工具按鈕與各個(gè)菜單項(xiàng)之間的聯(lián)...
我們在使用Windows 95時(shí),可以注意到在“開始”組中的菜單項(xiàng)前都有一個(gè)圖標(biāo),而且在Word 97中的菜單項(xiàng)前也有一個(gè)圖標(biāo)。這些圖標(biāo)不但讓我們清楚地了解到屏幕上的各種工具按鈕與各個(gè)菜單項(xiàng)之間的聯(lián)系,而且還增加了應(yīng)用程序界面的美觀。那么,請問如何用Visual C++ 5.0在應(yīng)用程序菜單中增加圖標(biāo)?
MFC的CMenu類有一個(gè)成員函數(shù)SetMenuItemBitmaps,可以用于往菜單中增加圖標(biāo)。具體方法如下:
在應(yīng)用程序的資源文件中添加想要增加的位圖,并將其ID命名為IDB_OPEN1和IDB_OPEN2;---在應(yīng)用程序的視圖類中添加CBitmap類的對象,不妨取名為bm_open1和bm_open2。在視圖類的構(gòu)造函數(shù)中添加以下代碼:
bm_open1.LoadBitmap(IDB_OPEN1);bm_open2.LoadBitmap(IDB_OPEN2);(函數(shù)LoadBitmap用于加載位圖到CBitmap類的對象)在視圖類的成員函數(shù)OnDraw()中添加以下代碼:
CWnd*parent=GetParent();CMenu*pmenubar=parent->GetMenu();
CMenu*pmenu=pmenubar->GetSubMenu(2);
pmenu->SetMenuItemBitmaps(1,MF_BYPOSITION,&bm_open1,&bm_open2);
前三行得到指向菜單的指針,第四行調(diào)用函數(shù)SetMenuItemBitmaps往菜單中增加圖標(biāo),具體參數(shù)的含義可參見有關(guān)介紹MFC及其成員函數(shù)的書即可。