如何用VC 5在菜单中增加位图或图标
敬业的IT人
互联网
佚名
2008-1-4 18:50:26
我们在使用Windows 95时,可以注意到在“开始”组中的菜单项前都有一个图标,而且在Word 97中的菜单项前也有一个图标。这些图标不但让我们清楚地了解到屏幕上的各种工具按钮与各个菜单项之间的联系,而且还增加了应用程序界面的美观。那么,请问如何用Visual C 5.0在应用程序菜单中增加图标?
MFC的CMenu类有一个成员函数SetMenuItemBitmaps,可以用于往菜单中增加图标。具体方法如下:
在应用程序的资源文件中添加想要增加的位图,并将其ID命名为IDB_OPEN1和IDB_OPEN2;---在应用程序的视图类中添加CBitmap类的对象,不妨取名为bm_open1和bm_open2。在视图类的构造函数中添加以下代码:
bm_open1.LoadBitmap(IDB_OPEN1);bm_open2.LoadBitmap(IDB_OPEN2);(函数LoadBitmap用于加载位图到CBitmap类的对象)在视图类的成员函数OnDraw()中添加以下代码:
CWnd*parent=GetParent();CMenu*pmenubar=parent->GetMenu();
CMenu*pmenu=pmenubar->GetSubMenu(2);
pmenu->SetMenuItemBitmaps(1,MF_BYPOSITION,&bm_open1,&bm_open2);
前三行得到指向菜单的指针,第四行调用函数SetMenuItemBitmaps往菜单中增加图标,具体参数的含义可参见有关介绍MFC及其成员函数的书即可。
MFC的CMenu类有一个成员函数SetMenuItemBitmaps,可以用于往菜单中增加图标。具体方法如下:
在应用程序的资源文件中添加想要增加的位图,并将其ID命名为IDB_OPEN1和IDB_OPEN2;---在应用程序的视图类中添加CBitmap类的对象,不妨取名为bm_open1和bm_open2。在视图类的构造函数中添加以下代码:
bm_open1.LoadBitmap(IDB_OPEN1);bm_open2.LoadBitmap(IDB_OPEN2);(函数LoadBitmap用于加载位图到CBitmap类的对象)在视图类的成员函数OnDraw()中添加以下代码:
CWnd*parent=GetParent();CMenu*pmenubar=parent->GetMenu();
CMenu*pmenu=pmenubar->GetSubMenu(2);
pmenu->SetMenuItemBitmaps(1,MF_BYPOSITION,&bm_open1,&bm_open2);
前三行得到指向菜单的指针,第四行调用函数SetMenuItemBitmaps往菜单中增加图标,具体参数的含义可参见有关介绍MFC及其成员函数的书即可。
- 最新文章
- 创建不在任务条中显示窗口按钮的应用[01-04]
- 实现操作过程提示对话框[01-04]
- 在同一系统中显示GB字符和BIG5字符[01-04]
- 快速实现MFC类浏览器[01-04]
- 如何在指定矩形中旋转显示文字[01-04]
- 如何判断当前操作系统的版本[01-04]
- 相关文章
