如何改变FormView的背景色
发布网友
发布时间:2022-05-25 17:11
我来回答
共1个回答
热心网友
时间:2023-11-23 22:18
重载OnEraseBkgnd
BOOL CTank1View::OnEraseBkgnd(CDC* pDC) {
// TODO: Add your message handler code here and/or call default CBrush brush(RGB(0,0,0));
CBrush* pOldOne = pDC->SelectObject(&brush); CRect rc;
pDC->GetClipBox(&rc);
pDC->PatBlt(rc.left, rc.top, rc.Width(), rc.Height(), PATCOPY); pDC->SelectObject(pOldOne); return TRUE; }
也可以
BOOL CTank1View::PreCreateWindow(CREATESTRUCT&cs) {
// TODO: Modify the Window class or styles here by modifying // the CREATESTRUCT cs WNDCLASS wndcls; wndcls.cbClsExtra=0;
wndcls.cbWndExtra=0;
wndcls.hbrBackground= //(HBRUSH)GetStockObject(BLACK_BRUSH);//获取一个黑色的背景画刷
CreateSolidBrush(RGB(0,0,0));
wndcls.hCursor=LoadCursor(NULL,IDC_ARROW); wndcls.hIcon=LoadIcon(NULL,IDI_APPLICATION);
wndcls.hInstance=AfxGetInstanceHandle(); //注意用全局函数获取应用程序hInstance句柄
wndcls.lpfnWndProc=::DefWindowProc; //必须指定为API函数,不同于CWnd中的DefWindowProc(参数个数不同)
wndcls.lpszClassName="BlackBackground";
wndcls.lpszMenuName=NULL; //菜单的创建并不是在设计窗口类时创建的,由MFC在构造pDocTemplate = new CSingleDocTemplate(IDR_MAINFRAME,…) 被创建。 wndcls.style=CS_HREDRAW | CS_VREDRAW; RegisterClass(&wndcls);
cs.lpszClass="BlackBackground";