社区
界面
帖子详情
关于窗口的重绘
jxcyly1985
2009-05-12 10:57:44
如果有一个父窗口,在这个父窗口上有很多控件,例如自定义按钮对象,自定义的画图区域对象,
当我对这些控件进行了类似InvalidateRect处理,那么对于父窗口是不是也会触发
wm_paint消息,还是说只会对控件本身产生wm_paint,
如果我在父窗口进行了类似InvalidateRect处理,那么会不会把消息对孩子传递下去,使父窗口和所有的
孩子控件都进行重新绘制。
...全文
167
8
打赏
收藏
关于窗口的重绘
如果有一个父窗口,在这个父窗口上有很多控件,例如自定义按钮对象,自定义的画图区域对象, 当我对这些控件进行了类似InvalidateRect处理,那么对于父窗口是不是也会触发 wm_paint消息,还是说只会对控件本身产生wm_paint, 如果我在父窗口进行了类似InvalidateRect处理,那么会不会把消息对孩子传递下去,使父窗口和所有的 孩子控件都进行重新绘制。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
pomelowu
2009-05-13
打赏
举报
回复
昨天回覆了這個帖子
http://topic.csdn.net/u/20090512/18/00417d18-5273-460c-b467-8e340b7356a5.html
對lz有點參考。:P
jxcyly1985
2009-05-13
打赏
举报
回复
[Quote=引用楼主 jxcyly1985 的帖子:]
如果有一个父窗口,在这个父窗口上有很多控件,例如自定义按钮对象,自定义的画图区域对象,
当我对这些控件进行了类似InvalidateRect处理,那么对于父窗口是不是也会触发
wm_paint消息,还是说只会对控件本身产生wm_paint,
如果我在父窗口进行了类似InvalidateRect处理,那么会不会把消息对孩子传递下去,使父窗口和所有的
孩子控件都进行重新绘制。
[/Quote]
还有一个问题,对于一些临时覆盖的区域,windows会保存这些区域,并在之后试图去恢复这些区域,
是不是paintstruct这个结构体里面保存了具体的无效区域的信息,假如我也只需要绘制整个显示区域
的一部分区域,在处理onpaint消息时候,是不是可以获得我的据图无效区域的大小,从而只绘制那些真正
需要重新绘制的区域,其实我想做的就是,不想在产生显示区域产生wm_paint重新整个显示区域的办法。
晒月光的青蛙
2009-05-13
打赏
举报
回复
[Quote=引用 3 楼 cnzdgs 的回复:]
刷新子窗口通常不会导致父窗口刷新,除非子窗口在刷新过程中主动刷新其父窗口。
刷新父窗口时,如果父窗口具有WS_CLIPCHILDREN风格,则不会引起子窗口刷新,否则会刷新该区域内的子窗口。
[/Quote]
学习了
TianChong
2009-05-13
打赏
举报
回复
父窗口是包含子窗口的,父窗口刷新,相对应的子窗口位置也会被刷新。如果子窗口单独刷新,则不会导到父窗口刷新。这是可控行为。
迷途的书童
2009-05-12
打赏
举报
回复
一般, 刷新父窗口, 会跟着刷新窗口上的所有控件;
控件刷新,不会影响到父窗口;
cnzdgs
2009-05-12
打赏
举报
回复
刷新子窗口通常不会导致父窗口刷新,除非子窗口在刷新过程中主动刷新其父窗口。
刷新父窗口时,如果父窗口具有WS_CLIPCHILDREN风格,则不会引起子窗口刷新,否则会刷新该区域内的子窗口。
tanxs001
2009-05-12
打赏
举报
回复
UP,和lz一样,不能确定!
xsc2001
2009-05-12
打赏
举报
回复
子窗的不会向上传,但是如果你的父窗口InvalidateRect则相应区域内的窗口就会向下传递下去。
MFC普通
窗口
重绘
MFC普通
窗口
重绘
,有什么不懂的可以随时到我的博客留言http://www.gymsaga.com/,我会尽早解答您的问题,更多MFC实例讲解,请登陆我的博客。
MySQL8之
窗口
函数实战&应用
由浅入深的将
窗口
函数相关知识讲解清楚,为了能够让读者轻松掌握
窗口
函数,本课程具备以下特点。 引入相关的数据表数据和项目需求,让读者感觉自己在实现真实的项目。 淡化纯理论的概念,重在实践。 知识点由浅入深...
MFC
重绘
标题栏、菜单栏并更改状态栏背景色
MFC
重绘
标题栏、菜单栏并更改状态栏背景色。工具栏背景色未修改成功!
【C#界面】完美实现无毛边异形窗体(优化版)
MainPosition:
窗口
在绘图层位置。 SkinBack:设置或获取绘图层
窗口
背景。 SkinMobile:窗体是否可以移动。 SkinOpacity:设置或获取绘图层
窗口
透明度(0-255)。 SkinShowInTaskbar:绘图层是否出现在Windows任务栏中...
界面
15,979
社区成员
115,896
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章