Programming/MFC
Example 2 : Mouse Event
부풍
2009. 8. 27. 15:27
CEx2View.h
CRect m_rectToDraw; int m_nColorList[3]; int m_nCurrentColor;
CEx2View::OnInitialUpdate
void CEx2View::OnInitialUpdate() { CView::OnInitialUpdate(); // TODO: 여기에 특수화된 코드를 추가 및/또는 기본 클래스를 호출합니다. m_nCurrentColor = 0; m_nColorList[0] = WHITE_BRUSH; m_nColorList[1] = DKGRAY_BRUSH; m_nColorList[2] = BLACK_BRUSH; m_rectToDraw = CRect(10, 10, 110, 110); }
CEx2View::OnDraw
void CEx2View::OnDraw(CDC* pDC) { CEx2Doc* pDoc = GetDocument(); ASSERT_VALID(pDoc); if (!pDoc) return; // TODO: 여기에 원시 데이터에 대한 그리기 코드를 추가합니다. pDC->SelectStockObject(m_nColorList[m_nCurrentColor]); pDC->Rectangle(m_rectToDraw); }
WM_LBUTTONDOWN
void CEx2View::OnLButtonDown(UINT nFlags, CPoint point) { // TODO: 여기에 메시지 처리기 코드를 추가 및/또는 기본값을 호출합니다. if (m_rectToDraw.PtInRect(point)) { m_nCurrentColor = (m_nCurrentColor + 1) % 3; InvalidateRect(m_rectToDraw); } //CView::OnLButtonDown(nFlags, point); }