当我用lineto函数画直线时,若设置象素颜色是画笔颜色的话,那么当我移动鼠标时,沿途都会画出许多线,但我只想画出当我放下鼠标时的那条线,怎么办?
(我以在鼠标移动和鼠标按下,鼠标放开这些消息的函数中写好了相应的代码)
(我知道有一种方法可以实现,但那种方法不可以得到画笔的颜色。)
谢谢各位高手!谢了!
(我以在鼠标移动和鼠标按下,鼠标放开这些消息的函数中写好了相应的代码)
(我知道有一种方法可以实现,但那种方法不可以得到画笔的颜色。)
谢谢各位高手!谢了!
解决方案 »
- VC6中编写的调用com组件的dll,windows7 64bit下不能用?
- 我用一个窗口在我的带背景的对话框上面不停的晃,晃一段时间后,该窗口的背景图便会消失。
- 怎么在VC中定义自己的热键?
- 为什么我不能用VC自带的Find in Files功能?
- 请教大侠,关于waveOut API 的问题
- 已经获得光标句柄HCORSOR,请问如何将其保存为光标文件(*.cur)?
- 我用BoundsChecker测试关于ADO的程序,发现SysAllocstring()函数有内存泄露,不知道是否为真的内存泄露?!有代码!
- 请教一下,怎样编辑一个对话框的系统菜单啊??
- 求助!VS2005运行一个项目的时候出现这个,估计是个动态库,但是不知道怎么弄?
- 怎样实现:出现关闭系统对话框时,全屏幕变暗的效果?
- 急!!大虾们请帮忙啊!!
- 如何改变BUTTON的背景颜色?
你可以到我的个人主页上下载图形程序,对你的学习会有一些帮助。============================================================================
提问题时标题要简明扼要地说明问题内容,切忌使用"急","求救"之类不能说明问题的标题
http://alphasun.betajin.com/ 给我发信息请附带原帖地址
http://www.betajin.com/alphasun/index.htm
DocWizard C++程序文档自动生成工具 | Wave OpenGL | HttpProxy | AjaxParser词法分析
每次在画线时要清除上一次画出的直线
每次在画线时要清除上一次画出的直线
大家说的都对BOOL MoveToEx(HDC hdc,
int X,
int Y,
LPPOINT lpPoint
);
OnPrepareDC(&dc);
dc.DPtoLP(&point);
dc.SetROP2(R2_NOT);
dc.MoveTo(m_PointOrigin);
dc.LineTo(m_PointOld);
dc.SetROP2(R2_COPYPEN);
dc.MoveTo(m_PointOrigin);
dc.LineTo(point);
CClientDC dc(this);
dc.SetROP2(R2_NOT);
dc.MoveTo(ptOld);
dc.LineTo(ptNew);
dc.MoveTo(ptOld);
dc.LineTo(point);
ptNew = point;
在处理OnLButtonUp消息中末尾加上Invalidate(),即可实现对所画图形进行上色。
CPen pen1,*oldpen1;
pen1.CreatePen(PS_SOLID,Pen_Width,RGB(200,200,200));
oldpen1=pDC->SelectObject(&pen1);
pDC->MoveTo(point);
pDC->LineTo(flag_countpoint1[1]);
flag_countpoint1[1]=point;
pDC->SelectObject(oldpen1);
我想实现在鼠标移动时,所画的线既有颜色。以下代码是我的设想,但不对。在OnMouseMove(UINT nFlags, CPoint point) 中有以下代码:
CClientDC dc(this);
OnPrepareDC(&dc);
dc.DPtoLP(&point);
dc.SetROP2(R2_NOT);
CPen pen1,*oldpen1;
pen1.CreatePen(PS_SOLID,1,RGB(0,200,200));
oldpen1=dc.SelectObject(&pen1);
dc.MoveTo(pointOld);
dc.LineTo(pointNow);
dc.SetROP2(R2_COPYPEN);
dc.MoveTo(pointOld);
dc.LineTo(point);
dc.SelectObject(oldpen1);
pointNow=point;