MDI 肯定没那么糟糕吧?
MDI 肯定没那么糟糕吧?
我有一个 ERP 类型的应用程序,并且选择了 MDI UI 模型。这样做的原因是为了使用户能够执行多任务。 是的,很多人说用户不能同时处理多项任务,但听我说完。
我的应用程序有多个模块或功能区域,例如管理、价格表、清酒订单、生产、库存运输等。 我选择为主应用程序窗口创建一个 MDI 父窗口,并为每个模块创建一个工具栏按钮。
假设用户想要创建一个销售订单。他单击主工具栏上的“销售订单”按钮,然后 出现销售订单窗口。这是一个 MDI 子项,允许用户创建和编辑销售订单并执行 它的一些功能,例如发布、接受等。因此,如果您正在创建销售订单并且需要 要更改价目表或添加 SO 中所需的一些参考数据,您只需从工具栏打开该模块即可 而不必放弃SO。您不能接受 SO,因为它可能违反业务规则。
从编辑多个同类文档(如 XLS 或 Word)的意义上来说,我的应用程序不是 MDI。每个模块 有自己的MDI子窗口。
如有意见,将不胜感激。
Surely MDI not so bad?
I have an ERP-type app and I have chosen a MDI UI model. The reason for this is to enable the user to multitask.
Yes, many say that a user cannot multitask, but hear me out.
My app has several modules or functional areas e.g. Admin, Pricelists, Sakes Orders, Production, Stock Shipping, etc.
I chose to create a MDI parent window for the main app window with a toolbar button for each module.
So let's say the user wants to create a Sales Order. He clicks the Sales Order button on the main toolbar and the
Sales Order window appears. This is a MDI child that allows the user to create and edit a sales order and perform
some functions on it e.g. Post, Accept, etc. So, if you are in the middle of creating a sales order and you need
to change a pricelist or add some reference data you need in the SO, you simply open that module from the toolbar
without having to abandon the SO. You cannot accept the SO, because it could violate business rules.
My app is not MDI in the sense of editing more than one document of the same kind like XLS or Word. The modules each
have their own MDI child window.
Comments would be appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
MDI还不错。如今这毫无意义。 SDI(单文档界面)具有良好的对接管理器和良好的选项卡支持就足够了。
例如,查看您的 IDE。我几乎可以肯定它是SDI(如Visual Studio、Delphi、Eclipse、Net Beans等)
MDI is not bad. It is just pointless nowadays. SDI (Single Document interface) with nice docking manager and good tabs support is sufficient enough.
Look at your IDE for example. I am almost sure that it is SDI (like Visual Studio, Delphi, Eclipse, Net Beans, etc.)
如果您有充分的理由这样做,那么 MDI 并没有什么问题。然而,在我看来,您所表达的理由并不是选择MDI的真正正当理由。您可以使用 SDI 弹出窗口轻松地执行您想要的操作,只要它们是非模式的即可。
MDI 的缺点是它在多显示器情况下不能很好地工作。 MDI 的优点是它提供了许多不错的子窗口管理功能(ctrl-tab 等),您必须在 SDI 中模拟这些功能。
我并不是说 MDI 不好,或者它不适合您的环境,但仅仅能够一次使用多个窗口并不是选择 MDI 的理由。
There's nothing wrong with MDI if you have good reasons for doing so. However, the reasons you have expressed are not really valid reasons to choose MDI in my opinion. You can just as easily do what you want with SDI popup windows, so long as they are non-modal.
The disadvantage of MDI is that it doesn't work very well in multiple monitor situations. The advantage of MDI is that it provides lots of nice child window management features (ctrl-tab, etc..) that you would have to emulate in SDI.
I'm not saying that MDI is bad, or that it is bad for your circumstances, but simply being able to work with more than one window at a time is not a reason to choose MDI.