绘图基础--鼠标移动画点

绘图基础--鼠标移动画点


// draw1.cpp

#include <afxwin.h>

// Define the application class
class CApp : public CWinApp
{
public:
	virtual BOOL InitInstance();
};

CApp App;  

// define the window class
class CWindow : public CFrameWnd
{ 
public:
	CWindow(); 
	afx_msg void OnMouseMove(UINT,CPoint);
	DECLARE_MESSAGE_MAP()
};

// The window's constructor
CWindow::CWindow()
{ 
	Create(NULL, "Drawing Tests", 
		WS_OVERLAPPEDWINDOW,
		CRect(0,0,250,250)); 
}

// The messahe map
BEGIN_MESSAGE_MAP( CWindow, CFrameWnd )
	ON_WM_MOUSEMOVE()	
END_MESSAGE_MAP()

// Handle mouse movement
void CWindow::OnMouseMove(UINT flag, 
	CPoint mousePos)
{
	//按住鼠标左键移动时,画点
	if (flag == MK_LBUTTON)
	{
		CClientDC dc(this);
		dc.SetPixel(mousePos,RGB(0,0,255));  //蓝色
		//dc.SetPixel(mousePos,RGB(rand()%256,rand()%256,rand()%256));
	}

	//按住鼠标右键移动时,擦除点
    if (flag == MK_RBUTTON)
	{
		CClientDC dc(this);
		dc.SetPixel(mousePos,RGB(255,255,255));	 //白色
	}
}

// Init the application
BOOL CApp::InitInstance()
{
	m_pMainWnd = new CWindow();
	m_pMainWnd->ShowWindow(m_nCmdShow);
	m_pMainWnd->UpdateWindow();
	return TRUE;
}


原文地址:https://www.cnblogs.com/james1207/p/3333831.html