如题 ↑
代码如下: CBrush m_brush;
::MENUINFO lpcmi;
m_brush.CreateSolidBrush(RGB(192,192,192));
memset(&lpcmi,0,sizeof(::LPCMENUINFO));
lpcmi.cbSize=sizeof(MENUINFO);
lpcmi.fMask= MIM_BACKGROUND;
lpcmi.hbrBack=(HBRUSH)m_brush.operator HBRUSH();
::SetMenuInfo(GetMenu()->m_hMenu,&lpcmi);
经测试上面代码,在vs2005中运行能修改菜单背景颜色,在vs2005中编译没问题,运行时在报错
C:\Documents and Settings\Administrator\桌面\1.jpg在线等~~~~~
代码如下: CBrush m_brush;
::MENUINFO lpcmi;
m_brush.CreateSolidBrush(RGB(192,192,192));
memset(&lpcmi,0,sizeof(::LPCMENUINFO));
lpcmi.cbSize=sizeof(MENUINFO);
lpcmi.fMask= MIM_BACKGROUND;
lpcmi.hbrBack=(HBRUSH)m_brush.operator HBRUSH();
::SetMenuInfo(GetMenu()->m_hMenu,&lpcmi);
经测试上面代码,在vs2005中运行能修改菜单背景颜色,在vs2005中编译没问题,运行时在报错
C:\Documents and Settings\Administrator\桌面\1.jpg在线等~~~~~
解决方案 »
- 父子进程用Event如何通信
- 安全结束线程
- 如何刷新屏幕的一部分???
- 用socket与其他程序通信的DLL
- vs2005正式版下载(微软内部泄漏)
- 问 ado调用记录集某字段update问题
- 我是初学VC,想知道DWORD,HWND,LPCSTR,PVOID,PLUID,PSID,PDWORD,PHANDLE的类型的详细解释,高分相送,特急,谢谢!
- VC 做的SQL查询功能 在Xp以上的系统能执行,但是在XP系统中不能执行
- 自己给自己送分?
- 这个问题只有版主可以帮我(回复过小糊涂仙招聘文章的朋友也来看看)
- 求助,手动开启ON_WM_CTLCOLOR消息响应出现错误
- VS2010中CMainFrame::OnCreate()函数里用GetMenu()->m_hMenu无法获取菜单指针。 求高手解决~~~~
你试试这段代码看看行不行:
m_wndMenu.LoadMenu(IDR_MAINFRAME);//主要是这两句
SetMenu(&m_wndMenu);//主要是这两句
MENUINFO menuinfo;
menuinfo.cbSize = sizeof(MENUINFO);
menuinfo.fMask = MIM_BACKGROUND;
menuinfo.hbrBack = ::CreateSolidBrush(RGB(255,0,0));
CMenu* pMenu = GetMenu();
::SetMenuInfo(pMenu->m_hMenu, &menuinfo);
DrawMenuBar();
我用VS2010生成的工程是VISUAL STUDIO 样式的,没有上面两句