基于对话框的MFC中如何重绘Picture控件

我在Picture控件上绘制坐标轴以及曲线,但是每当切换窗口后,Picture控件上的图形就没了,程序里有默认的OnPaint函数,我在这里面添加了绘图程序还是没有用。所... 我在Picture控件上绘制坐标轴以及曲线,但是每当切换窗口后,Picture控件上的图形就没了,程序里有默认的OnPaint函数,我在这里面添加了绘图程序还是没有用。所以想请教一下应该怎么办才好。 展开
 我来答
静静的世界34
推荐于2018-03-29 · TA获得超过1370个赞
知道小有建树答主
回答量:847
采纳率:91%
帮助的人:368万
展开全部
  在MFC中新建一个基于【对话框】的应用程序。
在这个主对话框上添加一些【静态文本框】和一些【编辑框】,用来显示人员的基本资料,同时添加一个picture控件,用来显示人员的照片。
人员信息和图片的名字全部都存到mysql数据库中,在【主对话框】中有四个按钮【查找】【添加】【删除】【更新】,点击时能够弹出4个非模态对话框,这些我都能实现,点击查找按钮,弹出查找对话框,添加查找条件,能够查找到这样的信息,可是我就不知道,怎么将查找到的图片信息显示在主对话框的picture控件中,添加的代码放在什么位置。
quaint87
2014-01-17
知道答主
回答量:4
采纳率:0%
帮助的人:7万
展开全部
添加窗口消息句柄WM_PAINT响应,不断的重绘绘制图形,代码放置在Ondraw函数中,避免重绘时图形消失。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
聊逍
推荐于2016-05-18 · TA获得超过197个赞
知道答主
回答量:90
采纳率:0%
帮助的人:82.2万
展开全部
应该是刷新问题,绘图代码写在OnPaint之后,系统只会在必要的时候调用刷新(比如移动窗口、窗口最小化后再打开等),如果需要手动刷新,可以使用函数Invalidate()进行强制重绘。默认参数为true,系统自动擦除背景后重绘,参数为false时,不会自动擦除背景。如果对刷新速度有较高要求,且不需求擦除背景的时候可以选择false。
上面的做法在高速刷新时屏幕会闪烁,可以考虑双缓冲技术来解决。首先在内存中建立一个DC,然后将要绘制的图形先绘制到内存DC中,最后一次性从内存中拷贝出来到当前DC,可以有效的解决闪屏问题。
详细的可以看百度文库这篇文章,重点看第7,8条
http://wenku.baidu.com/link?url=NX8qHZnWU-JInvP3ouZGp-_97B0BNUzkSVHQYUzH04h5oQ2A9f5UhEt42x3Ol47oLnFh4R3k8GsqwrOBbYO4x2TYgpYctqYbf_p0tWphymq
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式