Presentation is loading. Please wait.

Presentation is loading. Please wait.

Microsoft Foundation Class (MFC) Ku-Yaw Chang Assistant Professor, Department of Computer Science and Information Engineering Da-Yeh.

Similar presentations


Presentation on theme: "Microsoft Foundation Class (MFC) Ku-Yaw Chang Assistant Professor, Department of Computer Science and Information Engineering Da-Yeh."— Presentation transcript:

1 Microsoft Foundation Class (MFC) Ku-Yaw Chang canseco@mail.dyu.edu.tw Assistant Professor, Department of Computer Science and Information Engineering Da-Yeh University

2 22004/11/16Pattern-Oriented Design Outline Application Wizard Microsoft Visual C++.Net 2003 Microsoft Visual C++.Net 2003Document-View CView::GetDocument CView::GetDocument CView::OnDraw CView::OnDraw Device Contexts (DC) Using CDC

3 32004/11/16Pattern-Oriented Design Application Wizard Step One

4 42004/11/16Pattern-Oriented Design Application Wizard Step Two 2. 1. 3.

5 52004/11/16Pattern-Oriented Design Application Wizard Step Three

6 62004/11/16Pattern-Oriented Design Application Wizard Step Four

7 72004/11/16Pattern-Oriented Design Application Wizard Step Five

8 82004/11/16Pattern-Oriented Design Application Wizard Step Six

9 92004/11/16Pattern-Oriented Design Application Wizard

10 102004/11/16Pattern-Oriented Design Document-View

11 112004/11/16Pattern-Oriented Design Document-View

12 122004/11/16Pattern-Oriented Design GetDocument

13 132004/11/16Pattern-Oriented Design OnDraw

14 142004/11/16Pattern-Oriented Design Document-View CDocument UpdateAllViews UpdateAllViewsCView Invalidate

15 152004/11/16Pattern-Oriented Design Device Contexts Device Contexts (DC) Display Display Printer Printer Direct v.s. Indirect Memory Memory Information Information D1D2P1D1D2P1 DC DR1DR2DR3

16 162004/11/16Pattern-Oriented Design Device Contexts Device Context functions GetDC() GetDC() ReleaseDC() ReleaseDC() … (see MSDN) … (see MSDN) HDC vs. CDC HDC: Win32 SDK HDC: Win32 SDK CDC: MFC CDC: MFC

17 172004/11/16Pattern-Oriented Design Using CDC void CF12345678View::OnDraw(CDC* /*pDC*/) { CF12345678Doc* pDoc = GetDocument(); ASSERT_VALID(pDoc); if (!pDoc) return; // TODO: 在此加入原生資料的描繪程式碼 }

18 182004/11/16Pattern-Oriented Design Using CDC void CF12345678View::OnDraw(CDC* pDC) { CF12345678Doc* pDoc = GetDocument(); ASSERT_VALID(pDoc); if (!pDoc) return; CPen penRed(PS_SOLID, 1, RGB(255, 0, 0)); CPen * pOldPen; pOldPen = pDC->SelectObject(&penRed); pDC->SelectStockObject(HOLLOW_BRUSH); pDC->Ellipse(100, 100, 200, 200); pDC->SelectObject(pOldPen);}


Download ppt "Microsoft Foundation Class (MFC) Ku-Yaw Chang Assistant Professor, Department of Computer Science and Information Engineering Da-Yeh."

Similar presentations


Ads by Google