绘图基础--多边形2
// polygon2.cpp#include// Define the application classclass CApp : public CWinApp{public: virtual BOOL InitInstance();};CApp App; // define the window classclass CWindow : public CFrameWnd{ public: CWindow(); void OnPaint(); DECLARE_MESSAGE_MAP()};// The window's constructorCWindow::CWindow(){ Create(NULL, "Drawing Tests", WS_OVERLAPPEDWINDOW, CRect(0,0,350,300)); }// The message mapBEGIN_MESSAGE_MAP( CWindow, CFrameWnd ) ON_WM_PAINT() END_MESSAGE_MAP()// Handle exposurevoid CWindow::OnPaint(){ CPaintDC dc(this); // Change the pen and the brush CPen pen(PS_SOLID, 2, RGB(0,0,255)), *oldPen; CBrush brush(RGB(255,0,0)), *oldBrush; oldPen = dc.SelectObject(&pen); oldBrush = dc.SelectObject(&brush); // Create the polygon CPoint a[10]; a[0] = CPoint(100,100); a[1] = CPoint(250,100); a[2] = CPoint(110,180); a[3] = CPoint(180,30); a[4] = CPoint(260,180); dc.SetPolyFillMode(ALTERNATE); dc.Polygon(a, 5); // return old pen and brush dc.SelectObject(oldPen); dc.SelectObject(oldBrush);}// Init the applicationBOOL CApp::InitInstance(){ m_pMainWnd = new CWindow(); m_pMainWnd->ShowWindow(m_nCmdShow); m_pMainWnd->UpdateWindow(); return TRUE;}