【pDoc->UpdateAllViews(NULL); 问题????】

大树学长 2014-10-31 01:31:17
窗口分割后不同窗口直接要连接通过数据传输:SendMessage完成

在数据传输以后,就要通过pDoc->UpdateAllViews(NULL); //更新所有视图

但是如果数据传输过快(又是数据传输过快,怨念·········)
就会频繁的调用pDoc->UpdateAllViews(NULL); //所有视图界面都会刷新

使得界面很闪烁。

1、有没有什么办法只刷新一个视图界面?
我使用调用
CMainFrame *pMainFrame = (CMainFrame*)AfxGetApp()->m_pMainWnd;//获取主函数指针
CMy2FormView *pView = (CMy2FormView*)pMainFrame->GetActiveView();//通过主函数获取某一个视图的指针
pDoc->UpdateAllViews(pView );//刷新某一个视图

但最后刷新的还是所有的界面

2、双缓冲的问题
用双缓冲好像不能解决问题啊
好像pDoc->UpdateAllViews(NULL); 刷新的方式和双缓冲不一样,求解?????

怎么从根本上解决问题???
...全文
227 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
大树学长 2014-11-02
  • 打赏
  • 举报
回复
没人回贴么
大树学长 2014-10-31
  • 打赏
  • 举报
回复
引用 1 楼 wxhxj0268 的回复:
先重新设计一下程序结构吧,正确的设计是不会出现这种状况。我程序中未用一句UpdateAllViews,一样完成刷新和多个动画的支持,双缓冲正确不会出现闪烁。
如果不用pDoc->UpdateAllViews(pView ); 分割后的窗口直接的数据传递就不能显示。 比如一窗口传递值给二窗口,但如果没有UpdateAllViews,二窗口就没有获取到一窗口传递的值。
笨笨仔 2014-10-31
  • 打赏
  • 举报
回复
先重新设计一下程序结构吧,正确的设计是不会出现这种状况。我程序中未用一句UpdateAllViews,一样完成刷新和多个动画的支持,双缓冲正确不会出现闪烁。

15,979

社区成员

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

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