导航:首页 > 图片大全 > mfc如何自动移动图片

mfc如何自动移动图片

发布时间:2023-09-19 20:17:11

A. 用VS2010MFC制作简易画图程序,为何画出来的矩形是重影,如何解决拖动工具栏以后,图片就自动

是这样的,MFC创建的窗口,在接收到“重绘”消息的时候会擦除窗口的内容并绘制控件的图案(这意味着如果你不是在重绘消息的处理函数中绘制图形,那么图形被擦除后也不会再恢复),而在其它情况下窗口是不会擦除内容并重绘的。所以如果你只是在鼠标拖拽的事件中绘制矩形的话,绘制新矩形之前旧的矩形是不会被擦掉的。然而,也不能简单地使窗口重绘来到达目的,因为那样会导致之前已经绘制好的所有图形被擦掉,最后窗口只剩下最新绘制的矩形。要达到画图的目的,你得将已绘制好的图案储存在内存中(以位图的形式),而正在绘制的矩形则只在窗口上绘制,不在内存中的位图中绘制,而当当前的图形完全确定(即松开鼠标)时,再将它绘制入内存中的位图。这样处理后,就可以在鼠标拖动过程中(需要实时删除之前的图形)放心地使窗口重绘(这会使之前的图像被擦除,不会留下痕迹),然后在重绘消息处理函数中(擦除过程由MFC框架自动完成,你的处理函数会在擦除后被调用,负责绘制图案)将内存中的图案复制到窗口上,这使得之前已经确定的图案重新被显示。最后再向窗口中绘制当前还未确定的图形。至于具体实现,主要途径就是创建内存画布,网页搜索“MFC双缓冲绘图”,你会得到通过暂时在内存中绘图,最后再向屏幕复制图案以防止重绘时窗口闪烁的方法,在它的基础上稍加改动(例如将位图对象从临时改为全局以保留图像,请结合自己的思考修改其它部分)即可实现画图的功能。过程中请务必记住,窗口上的图像很容易就会因遮挡或重绘而消失,而且不方便针对性地删除某一个与其它图案重叠的图形,所以需要在内存中保存你希望保存的图像。

阅读全文

与mfc如何自动移动图片相关的资料

热点内容
衣服破烂的卡通女孩图片 浏览:544
插入文字图片如何去掉背景颜色 浏览:918
三星分屏如何拖拽图片 浏览:230
图片如何免费去掉水印 浏览:242
穿着可爱的权子图片 浏览:738
漫画女生哭泣图片唯美 浏览:860
西装成年男生图片 浏览:819
斜背发型图片男 浏览:622
播放男生生宝宝的图片他的 浏览:382
男生肠胃图片 浏览:659
用美图秀秀怎么把图片的底变成白色 浏览:505
怎么编辑动态图片加文字 浏览:982
人物包图片女生图片 浏览:930
温馨提示带伞添衣服带字图片 浏览:950
word每页同一位置插图片 浏览:879
带图片的word表格复制到表格中 浏览:873
电脑衣车图片和价格 浏览:717
如何在图片中修改文字 浏览:531
很萌动漫图片女生 浏览:330
画画图片大全简单漂亮甜品 浏览:869