我想做出只留当前一条线的效果,这段代码的重影为什么不消失?

coolcoffee4051982 2010-10-04 01:28:23
	if ((nFlags&MK_LBUTTON)==MK_LBUTTON)
{
CDC *dc=GetDC();
CDC *db;
CDC *da;
db=new CDC;
da=new CDC;
db->CreateCompatibleDC(dc);
da->CreateCompatibleDC(db);

if (first)
{
first=FALSE;
at.CreateCompatibleBitmap(dc,300,300);
bt.CreateCompatibleBitmap(dc,300,300);
db->SelectObject(bt);
db->BitBlt(0,0,300,300,dc,0,0,SRCCOPY);
}
da->SelectObject(at);
da->BitBlt(0,0,300,300,db,0,0,SRCCOPY);
da->MoveTo(50,50);
da->LineTo(point.x,point.y);
dc->BitBlt(0,0,300,300,da,0,0,SRCCOPY);
delete da;
delete db;
ReleaseDC(dc);
}
...全文
59 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
coolcoffee4051982 2010-10-04
  • 打赏
  • 举报
回复
自己解决了,虽然不是楼上的问题
ZM 2010-10-04
  • 打赏
  • 举报
回复
CDC::SetROP2(R2_NOTXORPEN);
coolcoffee4051982 2010-10-04
  • 打赏
  • 举报
回复
忘了说了,这是在一个对话框中的OnMouseMove(UINT nFlags, CPoint point) 函数中.

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧