如何用MFC实现橡皮擦功能

最好能有详细的代码.网上的很多方法我都试过了都不行

橡皮擦其实就是一个连续线条 m_bDraw用来判断是否在使用橡皮擦功能,这是部分代码
void CDrawView::OnMouseMove(UINT nFlags, CPoint point) //橡皮擦功能
{
// TODO: Add your message handler code here and/or call default
CClientDC dc(this);
if(m_bDraw==TRUE)
{
CBrush brush(RGB(255,255,255));
CPoint pt1;
CPoint pt2;
pt1.x=point.x-5;
pt1.y=point.y;
pt2.x=point.x;
pt2.y=point.y+5;
dc.FillRect(CRect(pt1,pt2),&brush);
}
CView::OnMouseMove(nFlags, point);
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-08-09
如果背景是纯色的话,就用楼上的那个方法,,,如果背景不是纯色,是有图像的好像要用的异或,好像是SetROP2这个函数,很久之前接触过。。。
第2个回答  2013-08-09
教你个简单的方法,把橡皮擦的颜色设置成画布的颜色。这样就可以当成是擦除了。

如何用MFC实现橡皮擦功能
橡皮擦其实就是一个连续线条 m_bDraw用来判断是否在使用橡皮擦功能,这是部分代码 void CDrawView::OnMouseMove(UINT nFlags, CPoint point) \/\/橡皮擦功能 { \/\/ TODO: Add your message handler code here and\/or call default CClientDC dc(this);if(m_bDraw==TRUE){ CBrush brush(RGB(255...

MFC 中怎样实现橡皮擦的功能?
首先点击橡皮擦时 响兴MouseMove消息.去获得光标的点坐标(::GetCursorPos API函数 获得的是屏幕坐标)橡皮都是有一个小范围的,自己定义一下这个矩形 然后ScreenToClient()转换为客户区矩形坐标.响兴LButtonDown消息,当按下鼠标左键时进行擦除 即 用 背影色(GetBKColor()获取背影色)进行填充矩形 具体函数...

MFC 中怎样实现橡皮擦的功能?
这个我也没有做过 不过可以提供一个思路 首先点击橡皮擦时 响兴MouseMove消息.去获得光标的点坐标(::GetCursorPos API函数 获得的是屏幕坐标) 橡皮都是有一个小范围的,自己定义一下这个矩形 然后ScreenToClient()转换为客户区矩形坐标. 响兴LButtonDown消息,当按下鼠标左键时进行擦除 即 用 背影色(G...

用vc给MFC绘图程序添加橡皮擦功能
以 MouseDown 为开始(设置Flag为TRUE)MouseMove 时触发擦除方法(Flag为TRUE时)以 MouseUp 为结束(设置Flag为FALSE)

mfc中,鼠标每移动一下,就将先前画的那条直线反显色(及消除),怎么做到...
如果能达成共识的话,那么你可以这么做:在mousemove的过程中,先将原始点坐标和当前鼠标点(左键未抬起)的坐标所构成的矩形区域用背景颜色填充一下,此过程可以理解为用橡皮擦擦除;然后在这两个点之间联线。这两个过程在你不断移动鼠标的过程中会快速作用,给你的感觉就是从原点拽出一根线,可长可...

如何通过vc编程实现对mbp图像的各种效果
当然,这些功能在面向对象的方法中都是可以很方便扩展的(如画椭圆,选取对象,对象的位移和旋转操作,根据填充算法实现同色选取,即Photoshop等软件的魔棒功能等),对于橡皮擦功能可以很简单的实现特定工具或告诉用户如何实现此功能(即用背景色利用已有功能绘图)。 内部实现上,要求单独记录各图形的关键属性(如位置、色彩等,...

兄弟MFC-7340的打印机我换了墨粉怎么还提示墨粉量低
重新安装驱动进行。4、以上都解决不了的话,有可能就是墨盒上的金属片长时间没有使用,接触不良了,就要把墨盒取出来,然后用橡皮擦干净,会发现墨盒上的金属片发亮。再安装上去,一般就不会有问题了。5、如果都解决不了问题,就要考虑墨盒是否损坏了,建议更换墨盒。6、建议联系专业维修人员进行检修。

打印机更换墨盒后 如何设置方法
1、首先,找到HP打印机的电源开关并将其关闭,如下图所示,然后进入下一步。2、其次,执行完上面的操作之后,打开打印机前盖,如下图所示,然后进入下一步。3、接着,执行完上面的操作之后,一只手按住HP打印机上的开始按钮(下图中的红色标记),另一只手打开打印机开关,如下图所示,然后进入下一...

兄弟打印机MFC-265C黑色墨盒不认怎么搞还了墨盒不行
用白色的橡皮擦,擦几下墨盒的芯片,并开关打印机和重启电脑。还有什么问题,可以在百度HI联系我!丹俊耗材 于3月10号至3月20号 \\兄弟\/\\ 爱普生\/ \\佳能\/\\填充墨水\/ 9.9 元 (团)(购)活动 搭配优_惠价_超_值活动,还不快到淘_宝首页搜_索店_铺INKOOL,进入抢_购,快+抢喔!

新手如何学习编程?
2.从实践上来说,需要有广泛的练习,练习的广泛在于练习不同的内容。然后就是创新精神和数学思维能力,这些都是需要培养的。基础要打好学编程要具备一定的基础。3.逻辑思维能力的培养、学程序设计要有一定的逻辑思维能力。“思维能力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是...

相似回答