社区
界面
帖子详情
MFC中如何为菜单添加背景图片
lovetow
2009-11-10 05:40:45
创建了一个对话框工程,用下面代码将创建的IDR_MENU_LANM菜单加载到了对话框上,
CMenu *pMenu = new CMenu;
BOOL ret = pMenu->LoadMenu(IDR_MENU_LANM);
SetMenu(pMenu);
请问各位大侠,我如何才能给IDR_MENU_LANM添加背景图片?
...全文
1343
13
打赏
收藏
MFC中如何为菜单添加背景图片
创建了一个对话框工程,用下面代码将创建的IDR_MENU_LANM菜单加载到了对话框上, CMenu *pMenu = new CMenu; BOOL ret = pMenu->LoadMenu(IDR_MENU_LANM); SetMenu(pMenu); 请问各位大侠,我如何才能给IDR_MENU_LANM添加背景图片?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wfx_net
2009-11-18
打赏
举报
回复
找找CMenuXP
lovetow
2009-11-16
打赏
举报
回复
[Quote=引用 3 楼 shinefen 的回复:]
自己重载CMENU看看 cmymenu
,然后重载里面的onpaint(),在里面贴图...
我没试过..呵呵
[/Quote]
CMENU类貌似不支持消息循环机制,这个方法不行啊!
lovetow
2009-11-16
打赏
举报
回复
[Quote=引用 4 楼 bwmwm 的回复:]
http://blog.csdn.net/bwmwm/archive/2006/10/29/1355035.aspx
试试看
[/Quote]
我按帖子上说的做了后,用新类实例化了对象后,编译通过。但运行后没有效果。
CBmpMenu *pMenu = new CBmpMenu;
BOOL ret = pMenu->LoadMenu(IDR_MENU_LANM);
SetMenu(pMenu);
不知道该怎么调用
//pMenu->MeasureItem(lpMeasureItemStruct);
//pMenu->DrawItem(lpDIS);
wenkefeng
2009-11-16
打赏
举报
回复
添加视图类消息 WM_ERASEBKGND
BOOL CHERMESView::OnEraseBkgnd(CDC* pDC)
{
// TODO: Add your message handler code here and/or call default
//加背景图
CBitmap m_bitmap;
m_bitmap.LoadBitmap(IDB_BITMAP_BKGROUND);
CRect rc;
GetClientRect(rc);
CDC dcImage;
dcImage.CreateCompatibleDC(pDC);
CBitmap *pOldBitmap=dcImage.SelectObject(&m_bitmap);
BITMAP bm;
m_bitmap.GetBitmap( &bm );
// Use the minimum width and height
int width = min(bm.bmWidth, rc.Width());
int height = min(bm.bmHeight, rc.Height());
// Draw the bitmap as the window background
pDC->BitBlt(rc.Width()-width,0,width,height, &dcImage, 0, 0, SRCCOPY);
// Release
dcImage.SelectObject(pOldBitmap);
dcImage.DeleteDC();
return true;
// return CView::OnEraseBkgnd(pDC);
}
xmzzy
2009-11-16
打赏
举报
回复
据说这个比较复杂,菜单和滚动条是自绘中比较难的两样
lovetow
2009-11-16
打赏
举报
回复
[Quote=引用 9 楼 wwgddx 的回复:]
MENUBARINFO mbi;
mbi.cbSize = sizeof(MENUBARINFO);
::GetMenuBarInfo(m_hWnd, OBJID_MENU, n, &mbi); //n表示第一个菜单,
CRect rcMenuBar(mbi.rcBar);
得到了信息就自己画吧
[/Quote]
“MENUBARINFO” : 未声明的标识符
应该包含哪个文件!?
wwgddx
2009-11-16
打赏
举报
回复
MENUBARINFO mbi;
mbi.cbSize = sizeof(MENUBARINFO);
::GetMenuBarInfo(m_hWnd, OBJID_MENU, n, &mbi); //n表示第一个菜单,
CRect rcMenuBar(mbi.rcBar);
得到了信息就自己画吧
paerxiushi
2009-11-15
打赏
举报
回复
http://topic.csdn.net/u/20090922/12/c21fbc08-1417-4227-9a83-7e2565d45c64.html
饽饽
2009-11-13
打赏
举报
回复
好像是重载按钮类
阜哥
2009-11-13
打赏
举报
回复
http://blog.csdn.net/bwmwm/archive/2006/10/29/1355035.aspx
试试看
shinefen
2009-11-10
打赏
举报
回复
自己重载CMENU看看 cmymenu
,然后重载里面的onpaint(),在里面贴图...
我没试过..呵呵
lovetow
2009-11-10
打赏
举报
回复
我找了一下,大多是给下拉菜单贴图的,没有给菜单栏贴图片的.
_JeffreyWu
2009-11-10
打赏
举报
回复
重载按钮类.网上找一下,N多
MFC
自定义
菜单
栏
背景
颜色,位置,宽度,高度,选
中
高亮
MFC
自定义
菜单
栏
背景
颜色,位置,宽度,高度,选
中
高亮以及颜色设置,
菜单
栏加载,
菜单
栏位置显示设置等等。
MFC
基于对话框
添加
背景
图片
代码
添加
背景
图片
空间
添加
位图、图标 对话框
添加
菜单
MFC
对话框加载皮肤
MFC
重绘标题栏、
菜单
栏并更改状态栏
背景
色
MFC
重绘标题栏、
菜单
栏并更改状态栏
背景
色。工具栏
背景
色未修改成功!
MenuEx.zip【这是一个上古时代的
MFC
自绘制
菜单
】
自绘制
MFC
弹出
菜单
类,继承自CMenu。支持设置
菜单
颜色,字体,
背景
色,选
中
高亮,
添加
图标等基本功能。亮点在于去除系统自动
添加
的边框,并且消除次级
菜单
与上级
菜单
的间隙,避免次级
菜单
选不上的情况。
MFC
对话框
添加
gif的方法
如何在
MFC
的对话框
背景
中
添加
gif动画
界面
15,978
社区成员
115,896
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章