Skillnaden mellan ett SDI-formulär och ett MDI-formulär i Visual Basic

Visual Basic-programmeringsmiljön ger utvecklare ett urval av användargränssnittsmodeller för sina applikationer, inklusive Single Document Interface och Multiple Document Interface. Många moderna applikationer använder SDI, men du kanske tycker att MDI är mer lämpligt för program eller applikationer som använder flera användargränssnittsflikar. Den nyare Microsoft Foundation Class - eller MFC - gör det enkelt att arbeta med både SDI- och MDI-applikationer.

Om SDI

De flesta applikationer använder ett enda dokumentgränssnitt. Varje fönster i programmet innehåller ett enda dokument, så om användaren vill öppna fler dokument med det programmet måste han öppna ett nytt fönster. Det är också standardläget när man bygger ett program med Visual Basic. Windows Notepad är ett exempel på en typisk SDI-applikation.

Dagens video

Om MDI

Flera dokumentgränssnitt var populära i versioner av Windows före Windows 95, men de har blivit mindre vanliga. Med en MDI innehåller varje fönster i ett program flera dokument, vanligtvis i underfönster. Nya dokument öppnas i det befintliga fönstret och informationen delas med alla andra öppna dokument. MDI-applikationer inkluderar webbläsare med flikar, som Mozilla Firefox, där användare har möjlighet att öppna dokument på flera flikar i samma fönster.

Fördelar med SDI

Ett SDI-gränssnitt fungerar mycket bra med flera bildskärmar och flera virtuella skrivbord. Det tillåter också användare att växla mellan flera öppna dokument med hjälp av Windows-aktivitetsfältet och aktivitetshanteraren, snarare än genom speciell kod som du skulle behöva skriva in i din applikation.

Fördelar med MDI

MDI-applikationer kan ofta hantera flera dokument lättare än SDI-program. Till exempel tillåter många MDI-textredigerare att användaren kan öppna flera textfiler sida vid sida i samma fönster, vilket gör det enkelt att jämföra och slå upp information från ett andra dokument medan du arbetar med först.

Stabilitet och prestanda

SDI-applikationer tenderar att vara mer robusta och buggfria än MDI-applikationer, eftersom ett allvarligt fel med ett dokument sällan påverkar de andra dokumenten i en SDI-miljö. Till exempel, om ett Windows Notepad-dokument kraschar, kommer alla andra öppna kopior av Notepad vanligtvis att överleva kraschen. Å andra sidan, om en webbsida i Firefox får webbläsaren att krascha, dör alla öppna webbsidor med den. Ändå tenderar MDI-applikationer att fungera snabbare än SDI-program, eftersom endast en version av applikationen laddas in i minnet.