View Background Color(배경색) 변경하기
Background color of CView window
구글 검색을 해보니 OnEraseBkgnd()함수를 사용하면 된다고 한다.
헤더에 함수를 선언하다.
virtual BOOL OnEraseBkgnd(CDC* pDC); |
소스의 메시지맵에 추가를 하고 함수를 아래와 같이 처리한다.
ON_WM_ERASEBKGND() |
배경색을 Button Face로 지정을 했다.
BOOL CTestView::OnEraseBkgnd(CDC* pDC) { // Get client area CRect rc; GetClientRect(&rc); // Create grey brush and insert it into DC DWORD btnColor = GetSysColor(COLOR_BTNFACE); CBrush brush(RGB(GetRValue(btnColor), GetGValue(btnColor), GetBValue(btnColor))); CBrush* pOldBrush = pDC->SelectObject(&brush); // Fill window with brush pDC->PatBlt(rc.left, rc.top, rc.Width(), rc.Height(), PATCOPY); // Restore DC pDC->SelectObject(pOldBrush); return TRUE; } |
GetSysColor function 사용법은 MSDN을 참고한다.
https://msdn.microsoft.com/ko-kr/library/windows/desktop/ms724371(v=vs.85).aspx
예제는 아래 링크 참고
https://msdn.microsoft.com/ko-kr/library/windows/desktop/ms724940(v=vs.85).aspx