这个程序是王华、朱时银、史兰等编著《VC++.NET 开发指南与实例详析》, 机械工业出版社中的一个例子,不过觉得关键部分没有说得足够清楚,自己学的时候有点不顺。
实现这样一个东西:
使用鼠标在视图中画直线:当左键按下时该点作为起点,随鼠标移动动态画线,当松开左键时完成一条线。
主要思路是这样的:
类定义{
构造内存DC——pMemDC;
构造位图——pBitmap;
}
OnCreate{
创建显示DC兼容的内存DC,用pMemDC指向;
创建与显示DC的“位图”兼容的位图,用pBitmap指向;
}
OnDraw{
//每次重绘时都会调用这个函数
把内存DC的位图拷贝到显示DC,说白了就是把内存时图弄到文档上去;
}
On左键点下{
记录起始位置;
记录上一个位置(当前就是起始位置);
正在作图标志置TRUE;
}
On鼠标移动(当前位置){
if (正在作图){
//由于鼠标移动时线是动态生成的ÿ