none
MFC 多文档中关于数据逻辑处理的问题 RRS feed

  • 问题

  • 现在多文档工程,每次新建一个页面耗费的时间比较久。我把数据都放在了视类中进行处理,是不是应该在doc中去专门处理数据逻辑,视类只处理显示?这个具体该怎么更改。

    因为我现在的大概结构是这样,  childframe->formview(splitter把它分为左右两个tabview界面),每个tabview下加载对应的子页面。所以每次新建后耗费了很多时间,显示的很慢,大虾们能否支招,看看怎么改进?谢谢!

    2014年6月27日 6:54

答案

  • 你好,

    根据您的描述,我觉得在进行MFC MDI 多文档开发的时候,尽量充分利用 Document/View Architecture的优势,通过它将数据和其表示分开,从而提供很好的数据层次和表现层次的解耦。数据的保存和数据的处理最好放在文档去处理,这样应该可以使你的显示层负担降低,从而减少加载显示的时间。

    我的理解是文档是用来保存数据以及关于数据的处理的,每当MFC SDI/MDI响应File(Open)/ File(New)的时候都会打开一份文档。文档可以拥有多个视图。文档和视图的关系可以这样理解:文档是被视图观察的对象。

    视图在Windows中就是一个窗口,也就是一个可视化的矩形区域。视图是用来表示文档的数据的。但是每个视图必需依附于一个框架(SDI中是MainFrame,MDI是ChildFrame)。当然你可以自己去Create一个视图,并且去显示它。

    希望对你有帮助。

    May


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2014年7月1日 7:09

全部回复

  • 你好,

    根据您的描述,我觉得在进行MFC MDI 多文档开发的时候,尽量充分利用 Document/View Architecture的优势,通过它将数据和其表示分开,从而提供很好的数据层次和表现层次的解耦。数据的保存和数据的处理最好放在文档去处理,这样应该可以使你的显示层负担降低,从而减少加载显示的时间。

    我的理解是文档是用来保存数据以及关于数据的处理的,每当MFC SDI/MDI响应File(Open)/ File(New)的时候都会打开一份文档。文档可以拥有多个视图。文档和视图的关系可以这样理解:文档是被视图观察的对象。

    视图在Windows中就是一个窗口,也就是一个可视化的矩形区域。视图是用来表示文档的数据的。但是每个视图必需依附于一个框架(SDI中是MainFrame,MDI是ChildFrame)。当然你可以自己去Create一个视图,并且去显示它。

    希望对你有帮助。

    May


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2014年7月1日 7:09
  • 谢谢你的回复,我了解了,会尝试看看
    2014年7月4日 0:52