一、简单绘图
a)画直线
b)画笔CPen的使用
c)画刷CBrush的使用
d)写字,CFont的使用
1、画直线
a)鼠标按下和抬起
b)创建画家对象 CClientDC
//创建画家对象,指定绘画设备
CClientDC dc(this);//画在当前对话框
c)起点和终点
MoveTo LineTo
d)选中所属类->右击->添加变量
2、画笔、画刷的使用
a)定义画家
b)定义画笔(画刷)CPen,CBursh
c)把画笔交给画家 CDC::SelectObject
实例解析:
1、新建一个基于单文档的项目
2、在所属类中添加变量(视图类添加)
/*在DrawView.h中添加变量*/
private:
CPoint m_myPoint; //鼠标当前的坐标
bool m_isPress; //鼠标按下与抬起的标识
3、添加消息处理程序
4、添加事件程序实现的代码
/*在DrawView.cpp中实现*/
//鼠标左键按下
void CMy04_DrawView::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
m_myPoint = point;//保存点击点的坐标
m_isPress = true; //标志 鼠标左键按下
CView::OnLButtonDown(nFlags, point);
}
//鼠标抬起
void CMy04_DrawView::OnLButtonUp(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
//创建画家对象,指定绘画设备
CClientDC dc(this);//画在当前对话框
dc.MoveTo(m_myPoint);//起点
dc.LineTo(point);//终点
m_isPress = false;
CView::OnLButtonUp(nFlags, point);
}
画笔和画刷的代码:
void CMy04_DrawView::OnDraw(CDC* pDC)
{
CMy04_DrawDoc* pDoc = GetDocument();
ASSERT_VALID(pDo