2010-03-16 63 views
1

他们每个人的优点和缺点是什么?哪个更好:MDI儿童或无模式对话框?

+0

我们是否正在谈论Windows窗体中的MDI儿童窗体和模态对话框? – 2010-03-16 02:23:50

+0

是的,这就是我的意思。 – deerchao 2010-03-16 02:45:17

+0

相关:[仍然有一个MDI的地方?](http://stackoverflow.com/questions/486020/is-there-still-a-place-for-mdi)[德尔福,MDI与多文档标签接口(http://stackoverflow.com/questions/1463221/delphi-mdi-vs-tabs-for-multi-document-interface) – voyager 2010-05-31 19:09:46

回答

3

这取决于。

使用MDI(或标签MDI),如果用户一般会集中在一个文件一次,并且会希望看到尽可能多的。

如果用户希望一次与很多较小的表单进行交互,请使用拥有的非模态表单(例如toolwindows)。

您也可以同时使用,一拉的Visual Studio。

2

这取决于很多因素,最重要的是你想你的用户与应用程序交互(或怎么做,他/她选择这样做)如何。

例如,旧的互联网浏览方式有很多不同的窗口,会混乱的任务栏。现在,新的趋势是标签,每个人都在朝着它迈进。

相反,MS Office正在朝相反的方向发展。您曾经在一个窗口中打开过很多文件,但现在他们在任务栏中混乱了。

标签的优点在于您可以一次看到所有标签,并且可以快速切换到热键。然而,Office在[菜单栏] - [窗口] - [文件名]中隐藏了这些文件。在文件之间改变很多痛苦。

MDI首次发明了两个过时的模式,它们是“马赛克”,其中每一个窗口被配置为具有大约相同的高度/宽度和“级联”。我从未见过喜欢这些模式的单个用户。

新的趋势是有裁剪窗口,像Slaks说,比如在Visual Studio或者你需要查看大量的数据一次最DEVELOPPEMENT environements。这种方法是“马赛克”模式的明确后继,但具有很大的优势,无论何时调整大小或移动单个窗口,所有其他自动重新排列。

0

+1 for @ SLaks的回答。

这可能是重要的,你的用户有一些对话式的窗户,实际上是无模式,如果他们需要使用所显示的数据为另一任务的一部分。

例如,SQL Server Management Studio中的一些对话框实际上是非模态的,即使它们可能有OK和Cancel按钮;数据库属性窗口就是这样一个野兽。