加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

MDI程序与SDI程序的区别

(2011-06-12 10:34:09)
标签:

杂谈

分类: VC知识(MFC)

多文档MDI应用程序和单文档SDI应用程序的主要不同在于:它支持多个文档、甚至多个文档类型。从用户的角度,他们有以下几点差别:

(1)    MDI允许用户同时打开多个文档,而SDI只能打开一个文档。

(2)    MDI应用程序甚至可以支持多种文档类型。例如word不仅支持.doc文件,还可以打开web页面文件.html等。

(3)    MDI应用程序通常包含一个windows菜单,可以用它来切换显示同一个文档的不同视图,还可以切换显示不同文档的视图。

(4)    SDI应用程序仅有一个框架窗口,而MDI应用程序有两个:一个是顶层框架窗口,另一个是文档窗口。前者和SDI的框架窗口类似,后者则用来包含打开文档的视图。

(5)    SDI应用程序通常只有一个菜单,而MDI应用程序通常含有两个,一个在没有文档打开时显示,另一个在有文档打开时显示。

SDI和MDI在结构上的区别在于:

(1)    MDI应用程序的框架窗口从CMDIFrameWnd类中派生,而SDI应用程序的框架窗口从CFrameWnd类中派生。

(2)    MDI应用程序中包含文档视图的子窗口由CMDIChildWnd派生,而SDI应用程序不存在子框架窗口。

(3)    MDI应用程序和SDI应用程序的文档模板类不同。MDI应用程序中使用CMultiDocTemplate类对象,而SDI应用程序使用CSingleDocTemplate类对象。

(4)    MDI应用程序至少含有两个菜单资源,而SDI只有一个。

0

阅读 收藏 喜欢 打印举报/Report
后一篇:ZZ:写给女儿
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有