工具条背后,像货架的区域叫什么?怎么设置背景?[图]
如图,工具条背后,像货架的区域是什么?
有没有什么名称?
MFC中在哪里可以设置它的颜色?在哪里可以修改成图片背景?
[解决办法]
那个是控制栏:CControlBar
[解决办法]
你创建Toolbar的时候后面加了停靠,Toolbar往下拖就会创建这个区域,不加停靠Toolbar就会漂着
[解决办法]
- C/C++ code
WNDPROC OldWndProc = NULL;HINSTANCE hInstance = NULL;LRESULT CALLBACK NewWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam){ switch(uMsg) { case WM_ERASEBKGND: { HDC hdc = (HDC)wParam; if(hdc) { RECT rc; GetClientRect(hWnd, &rc); CBrush br; br.CreateSolidBrush(RGB(255, 0, 128)); FillRect(hdc, &rc, br); return TRUE; } } break; default: break; } return CallWindowProc(OldWndProc, hWnd, uMsg, wParam, lParam);}// CMainFrame::OnCreate函数中CWnd* pWnd = m_wndToolBar.GetParent(); if(pWnd && pWnd->GetSafeHwnd()) { HWND hWnd = pWnd->GetSafeHwnd(); hInstance = AfxGetInstanceHandle(); OldWndProc = (WNDPROC)SetWindowLong(hWnd, GWL_WNDPROC, (LONG)NewWndProc); }
[解决办法]
你问题比较多
我就说其中一个
你采用的绘制方法是绘制工具条的客户区
3D效果属于ClientBorder
它是工具条的非客户区
我记得工具条的风格好像有一个关于flat的属性可以设置没有这个border
如果不是这样你需要绘制工具条的非客户区才能取消这个效果