MDI程序与SDI程序的区别

 

多文档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只有一个。

 

文章转载:http://blog.sina.com.cn/s/blog_7c983ca60100ta0x.html

你可能感兴趣的:(MDI程序与SDI程序的区别)