Tek Eye Logo

Tek Eye

What is MDI Form? The MDI User Interface

What is the MDI Form? MDI is short for Multiple Document Interface. MDI applies to three different aspects of the User Interface (UI) of an application. It refers to a form (as in type) of software or app, an MDI design. MDI is also a master (controlling) window in that design, the MDI parent form. Finally MDI is a window under control of the MDI parent, the window being controlled is a MDI child form.

(The area of a computer program that takes input and displays output can be called a screen, window, dialog or form. All those terms can be used to describe the boxes drawn on the device display for program output and user input. For this article the term window is used for the box drawn on a display, and the term form is used to describe the definition of that window in a programming language.)

Each window in a MDI UI is, historically, referred to as a form (from the early days of Microsoft Visual Basic). The MDI concept is a way of handling the different windows that a program or app can display. What are the features of MDI? Each window in the application, each MDI child, sits inside the frame of the MDI parent. The MDI parent acts as the master controller. This outer parent form controls the layout of the multiple inner child forms. It is like having a self contained windowing system built into the program:

Multiple Document Interface

MDI is no Longer Popular

MDI is one type of design for a program or app. The SDI or Single Document Interface is probably the most common style of UI design. What is the difference between the Single Document Interface and Multiple Document Interface? The SDI has no master window and each window shown by the program sits separately on the screen, think of a typical file manager application (such as Microsoft Window's File Explorer), it is usually SDI. SDI existed before MDI came along and is the most common UI style:

File Explorer

Another UI style is the TDI or Tabbed Document Interface. Most web browsers are TDI style with each open web page sitting in a tab in the browser:

Tabbed Document Interface

But MDI is Useful

Laptop and desktop personal computers (PC) sales peaked around 2010 as consumers switched to smartphones to handle their daily computing needs. This means the traditional PC application has lost ground to mobile apps. Mobile apps are used on smaller screens (phones and tablets) where the traditional PC interface does not work well. This has seen the emergence of new UI styles, such as windows sliding in from off screen with a swipe, or the infinite scroll where a screen seems go on for ever as you swipe up. However, the MDI UI still has very useful roll to play.

MDI works well when each child window is providing the same functionality but using a different data set. The classic examples are for word processing or spreadsheets (hence the document in Multiple Document Interface), but even those applications have gone SDI. However, if an application will be running on a PC and needs to show lots of data sets and have lots of windows to capture input then MDI is a good candidate.

The traditional PC is an esssential part of a modern business or industrial set up. Business software with access to large screens can take advantage of MDI UI design. Whilst not suitable for all software MDI allows the software developer to concentrate more on the functional aims of the software than worrying about manipulating windows and controlling their positioning. The child windows management is performed by the built in features of the parent window. This makes for a good foundation for the software, providing the skeleton of the program upon which the functionality can be added. Therefore if you have to write a new program for a business or industrial setting consider the useful MDI form a basis.

See Also

  • View the Tek Eye full Index for other articles.

Author:  Published:  

ShareSubmit to TwitterSubmit to FacebookSubmit to LinkedInSubmit to redditPrint Page

Do you have a question or comment about this article?

(Alternatively, use the email address at the bottom of the web page.)

 This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

markdown CMS Small Logo Icon ↓markdown↓ CMS is fast and simple. Build websites quickly and publish easily. For beginner to expert.

Articles on:

Android Programming and Android Practice Projects, HTML, VPS, Computing, IT, Computer History, ↓markdown↓ CMS, C# Programming, Using Windows for Programming

Free Android Projects and Samples:

Android Examples, Android List Examples, Android UI Examples

Tek Eye Published Projects