MFC UI的两个小问题

酱油党 2012-04-17 03:45:40
1:在基于对话框的MFC工程中进行区域动态贴图,已经实现,实现方式是通过timer()在timer中postmessage(wm_paint)进行从新绘制,但是,上次绘制的图片还会存在,怎样能够擦除(本次绘制没有绘到而上次绘制到的地方)
2:静态的对话框重载OnCtlColor进行了Edit控件的背景色和字体颜色的设置,该Edit控件右侧存在滚动条,在Edit控件刷新的时候,控件的在边框模式和滚动条两头的小箭头(点击滚动条就滚动哪个)会被背景色覆盖,而Edit控件的窄边框(选择了带边框控件)刷新的时候窄边框会消失,上面的两个问题,在鼠标焦点在边框上或在滚动条的小箭头部位时会完成在边框和滚动条箭头的正确绘制。
以上:
1题40,2题60
...全文
167 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
tubo_true 2012-05-14
  • 打赏
  • 举报
回复
2 自绘edit
jianghandaxue 2012-05-14
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]
1、时钟消息里用Invalidate,而且你要确保OnPaint中使用的是CPaitnDC
2、这个问题不太好解决,建议自绘edit,自己的控制度大一些,参考
http://blog.csdn.net/mirage520/article/details/7316440
[/Quote]

up
向立天 2012-05-12
  • 打赏
  • 举报
回复
您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知

见此回复三日内无回应
我们将强制结帖
相关规定详见界面界面版关于版主结帖工作的具体办法
酱油党 2012-04-19
  • 打赏
  • 举报
回复
第一题已经完成了,现在在进行第二题
向立天 2012-04-17
  • 打赏
  • 举报
回复
1、时钟消息里用Invalidate,而且你要确保OnPaint中使用的是CPaitnDC
2、这个问题不太好解决,建议自绘edit,自己的控制度大一些,参考
http://blog.csdn.net/mirage520/article/details/7316440
  • 打赏
  • 举报
回复
Invalidate
尘中远 2012-04-17
  • 打赏
  • 举报
回复
1. 调用函数InvalidateRect拭除掉上次绘图,InvalidateRect( OldPicRect, true ); OldPicRect就是上次绘图的矩形区域
YYgao 2012-04-17
  • 打赏
  • 举报
回复
你更改为之后将整个窗口重绘一次就不会出现上次绘制的图片还会存在了。
你那个绘图的位置需要根据Timer()改变
酱油党 2012-04-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
[/Quote]
1、对话框中有个消息WM_ERASEBKGND,用于响应对话框背景擦出。消息响应函数是OnEraseBkgnd();
postmessage(wm_erasebkgnd);
postmessage(wm_paint);
这个试过重载OnErasebkgnd函数,没有效果,感觉跟你说的是一个,不过我在尝试下这种。

2、应该是你填充的区域有问题,对话框的背景区域应该是除去标题栏和右(或左)侧滚动条以外的区域。
这个没有想到有可能会是区域问题,我回去试一下
酱油党 2012-04-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
1、楼主试图移动一下窗体,或最小化然后恢复
[/Quote]
感觉移动窗体的方法不好,而最小化后再最大化和设焦点setfoucs都试过达不到效果,
LittleCommit 2012-04-17
  • 打赏
  • 举报
回复
1、对话框中有个消息WM_ERASEBKGND,用于响应对话框背景擦出。消息响应函数是OnEraseBkgnd();
postmessage(wm_erasebkgnd);
postmessage(wm_paint);

2、应该是你填充的区域有问题,对话框的背景区域应该是除去标题栏和右(或左)侧滚动条以外的区域。
ouyh12345 2012-04-17
  • 打赏
  • 举报
回复
1、楼主试图移动一下窗体,或最小化然后恢复

15,979

社区成员

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

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