onupdate

数据的初始化显示刚开始写在onupdate中,文档类中的数据更新之后,希望通过调用UpdateAllViews(FALSE)来实现视图的更新,可以实现!后来觉得不妥,想把初始化显示写在ondraw中,onupdate另有他用,结果框架调用onupdate之后却并不调用ondraw,可在另一个相同程序中却调用了ondraw,百思不得其解。

 原来是,onupdate的默认实现实现是通过发送WM_PAINT的消息调用ondraw的,一旦将update重载,就不在默认执行了,要想仍然调用ondraw,可以

return CView::OnUpdate(pSender, lHint, pHint);
实现默认调用。
————————————————
版权声明:本文为CSDN博主「zhanghui9020」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u013089125/article/details/20922743

 

 

OnUpdate 是CView提供的一个方法,一般当文档修改时调用,应用程序框架在CView::OnInitialUpdate 和CDocument::UpdateAllViews 的默认实现中都会调用  
OnUpdate,OnUpdate的默认实现是通过Invalidate产生WM_PAINT,这时OnDraw又被调用了。

你可能感兴趣的:(onupdate)