Single document interface和Multiple document interface

https://en.wikipedia.org/wiki/Single_document_interface

https://msdn.microsoft.com/en-us/library/b2kye6c4.aspx

SDI applications allow only one open document frame window at a time.

It's made up of one or more independent windows, which appears separately on the windows desktop.

An example of this would be a simple text document(Notepad).

 

MDI applications allow multiple document frame windows to be open in the same instance of an application.

An MDI application has a window within which multiple MDI child windows, which are frame windows themselves, can be opened, each containing a separate document.

In some applications, the child windows can be of different types, such as chart windows and spreadsheet电子制表软件 windows.

In that case, the menu bar can change as MDI child windows of different types are activated.

 

https://en.wikipedia.org/wiki/Multiple_document_interface

Comparison with single document interface

In the usability community, there has been much debate about whether the multiple document or single document interface is preferable.

Software companies have used both interfaces with mixed responses.

For example, Microsoft changed its Office applications from SDI to MDI mode and then back to SDI, although the degree of implementation varies from one component to another.

SDI can be more useful in cases where users switch more often between separate applications than among the windows of one application.

 

The disadvantage of MDI usually cited引用 is its lack of information about the currently opened windows:

In MDI applications, the application developer must provide a way to switch between documents or view a list of open windows, and the user might have to use an application-specific menu ("window list" or something similar) to switch between open documents.

This is in contrast to SDI applications, where the window manager's task bar or task manager displays the currently opened windows.

However, in recent years it has become increasingly common for MDI applications to use "tabs" to display the currently opened windows, which has made this criticism somewhat obsolete.

An interface in which tabs are used to manage open documents is referred to as a "tabbed document interface" (TDI).

 

Another option is "tiled" panes or windows, which make it easier to prevent content from overlapping重叠.

Some applications allow the user to switch between these modes at their choosing, depending on personal preference or the task at hand.

Nearly all graphical user interface toolkits to date provide at least one solution for designing MDIs, with an exception being Apple's Cocoa API.

The Java GUI toolkit, Swing, for instance, provides the classjavax.swing.JDesktopPane which serves as a container for individual frames (class javax.swing.JInternalFrame). 

GTK+ lacks any standardized support for MDI.

 

作者:Chuck Lu    GitHub    
posted @   ChuckLu  阅读(372)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· C# 深度学习:对抗生成网络(GAN)训练头像生成模型
· .NET 适配 HarmonyOS 进展
· .NET 进程 stackoverflow异常后,还可以接收 TCP 连接请求吗?
· SQL Server统计信息更新会被阻塞或引起会话阻塞吗?
阅读排行:
· 传国玉玺易主,ai.com竟然跳转到国产AI
· 本地部署 DeepSeek:小白也能轻松搞定!
· 自己如何在本地电脑从零搭建DeepSeek!手把手教学,快来看看! (建议收藏)
· 我们是如何解决abp身上的几个痛点
· 普通人也能轻松掌握的20个DeepSeek高频提示词(2025版)
点击右上角即可分享
微信分享提示