一个新学者的问题。关于画图。 当我用lineto函数画直线时,若设置象素颜色是画笔颜色的话,那么当我移动鼠标时,沿途都会画出许多线,但我只想画出当我放下鼠标时的那条线,怎么办?(我以在鼠标移动和鼠标按下,鼠标放开这些消息的函数中写好了相应的代码)(我知道有一种方法可以实现,但那种方法不可以得到画笔的颜色。)谢谢各位高手!谢了! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个问题,关键在于你要好好的自己仔细琢磨,好好学习。你可以到我的个人主页上下载图形程序,对你的学习会有一些帮助。============================================================================提问题时标题要简明扼要地说明问题内容,切忌使用"急","求救"之类不能说明问题的标题http://alphasun.betajin.com/ 给我发信息请附带原帖地址http://www.betajin.com/alphasun/index.htmDocWizard C++程序文档自动生成工具 | Wave OpenGL | HttpProxy | AjaxParser词法分析 MoveTo每次在画线时要清除上一次画出的直线 MoveTo每次在画线时要清除上一次画出的直线 MoveTo 大家说的都对BOOL MoveToEx(HDC hdc,int X,int Y,LPPOINT lpPoint); CClientDC dc(this); 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); 在处理OnMouseMove消息中 CClientDC dc(this); dc.SetROP2(R2_NOT); dc.MoveTo(ptOld); dc.LineTo(ptNew); dc.MoveTo(ptOld); dc.LineTo(point); ptNew = point;在处理OnLButtonUp消息中末尾加上Invalidate(),即可实现对所画图形进行上色。 你可以用GDI生成一只笔,画线就可以。记住要释放笔。 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); http://expert.csdn.net/Expert/topic/1748/1748560.xml?temp=.9633448 有什么方法可以擦除上一次所画的彩色的线吗?我想实现在鼠标移动时,所画的线既有颜色。以下代码是我的设想,但不对。在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; bool operator==(const char* sz); and operator const char* () const; 两句话什么意思? 如何删除一个已经生成的派生类? 界面制作——QQ好友名单的抽屉效果 winpcap2.3安装后用不了 我用ATL做的Service,可是出现了问题,300分 回调函数的实现机制是怎样的? 如何实现程序中的两个视之间的交互。(可能很简单的问题) 两个容易的问题,先回答先给分 关于定时器,大家提建议 lhxx请进>>>> 急!!大虾们请帮忙啊!! 如何改变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;