Win32应用程序窗口刷新

窗口重绘不是通过WM_PAINT吗?但是我看程序里面的WM_PAINT消息处理只有BeginPaint和EndPaint,没有做其他事情,但是窗口仍然可以重绘,而且就算注... 窗口重绘不是通过WM_PAINT吗?但是我看程序里面的WM_PAINT消息处理只有BeginPaint和EndPaint,没有做其他事情,但是窗口仍然可以重绘,而且就算注释掉这两句话也是可以重绘的? 展开
 我来答
jadeshu
2012-01-05 · 超过25用户采纳过TA的回答
知道答主
回答量:101
采纳率:0%
帮助的人:102万
展开全部
就是无效到有效的过程
当窗口无效时,BeginPaint()调用令整个显示区域有效,擦拭背景等工作,并传回句柄,可以用这个句柄,EndPaint释放设备上下文句柄,使之不再有效。

可以在 BeginPaint和EndPaint之间添加你的代码!如输出文字TEXTOUT() 例在程序窗口中输出“你好”两字,那么当窗口拖动大小或者被其他窗口挡住就变无效了(这两个字“你好”就没有了)那么就会传个WM_PAINT消息,然后执行里面的代码,这样不至于你改变窗口大小或者被遮住而使文字没有了!! 自己可以试试代码
哎,打累死了!!希望能帮到你。。。
匿名用户
2012-01-04
展开全部
如果在这个下面不处理的话,调用都是默认的,也就是你前面注册类时候的状态
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
吾亦爱芳草
2012-01-05
知道答主
回答量:19
采纳率:100%
帮助的人:7.9万
展开全部
你说的重绘不包括标题栏、菜单栏和工具栏吧,WM_PAINT消息只重绘Client区,如果BeginPaint和
EndPaint中间什么都没有,但Client区仍绘制的话,查一下有什么地方调用了GetDC,或许在那里做了绘制。
追问
事后发现应该只是WM_ERASEBKGND,刷新了一下背景。
不过,话说标题栏、菜单栏和工具栏的绘制是怎么搞的
追答
标题栏、菜单栏和工具栏本身也是窗体,VC6.0带有Spy++工具,可以看到这些窗体的信息
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bjaieok387
2012-01-06
知道答主
回答量:5
采纳率:0%
帮助的人:8233
展开全部
像一块海绵,每天都会拧出大把大把的思念。但他必须
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
aiejkd587
2012-01-06
知道答主
回答量:5
采纳率:0%
帮助的人:8233
展开全部
着树上的名字,那是他们分开的日
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式