2

在开发具有多组同等重要数据和操作的桌面应用程序时,您如何处理用户界面设计?

我开发的大多数基于 Web 的应用程序都有一个简单的主页,其中包含指向应用程序提供的每项服务的链接。这些页面中的大多数都包含数据库中的项目列表,您可以通过以下“编辑”“更新”或“删除”类型的链接向下钻取或执行操作。想想 vBulletin 用户控制面板。菜单在左侧,数据组和操作在右侧。

我现在正在研究桌面应用程序开发,并对最常见的设计习语感到好奇。对于上面的例子,我设想了某种选项卡式界面(例如带有 Java 透视图的 Eclipse、Subversion 透视图等),但如果功能组的使用频率大致相同,用户将经常在选项卡之间单击. 我还想知道我是否想让用户启动 n 个相同类型的选项卡,或者为每个功能组预加载每个选项卡,并且只允许用户在它们之间切换。

我想它也可以为每组功能使用单独的窗口来实现。这就留下了一个不合适的“主窗口”的问题,它只是一组按钮来关闭这些窗口。

在成为桌面应用程序用户这么多年之后,当谈到实际构建一个有意义且不引人注目的界面时,我感到很困惑。我查看了 microsoft office,但这些应用程序中的大多数都处理具有许多操作的一个数据(例如,一个 word 文档),而不是许多同样重要的数据,每个数据都具有独特的功能。

在这种情况下,您在桌面应用程序开发中遵循哪些设计原则/惯用语?

4

2 回答 2

1

每个数据组拥有三个单独的窗口,允许用户并排查看多个数据组(假设他们的监视器足够大),这是选项卡不提供的灵活性。单独的窗口还允许您为每个数据组拥有不同的菜单栏和工具栏,从而消除用户在任何一个数据组上工作时一堆禁用操作的混乱。

除非您的“主”窗口更像是一个用于汇总和监控其他三个窗口中的内容的仪表板,否则您在三个窗口之外没有一个用于实际数据的窗口是正确的。相反,允许用户通过三个窗口中的任何一个的下拉菜单打开任何窗口。代替在大多数桌面应用程序的文件菜单中找到的无处不在的打开菜单项,具有三个打开菜单项,每个数据组一个(例如,打开的客户、打开的库存、打开的订单,或者可能只是将它们标记为客户、库存、订单)。不要使用级联菜单,除非添加一堆 Open X 会使您的文件菜单很长;15-20 个菜单项是可以接受的。用于打开每个窗口的冗余工具栏按钮也是一个好主意。

如果用户在给定会话中确实平等地使用了所有三个窗口,那么当用户执行程序时,没有理由不能默认打开所有三个窗口。如果他们倾向于每个会话使用一个窗口,您可以在启动时提供一个对话框(可能与启动窗口集成),其中包含命令按钮来选择启动窗口;或者您可以通过在安装时在“开始”菜单中放置三个快捷方式来消除对话框的额外步骤,每个窗口一个。如果在什么时候使用的窗口存在非随机变化,您也可以自动打开在上一个会话的最后 5 秒内打开的任何窗口。如果窗口使用存在个体差异,并且您可以通过某种方式了解特定用户最倾向于使用哪些窗口(例如,从他们的工作描述中),然后在安装时设置默认窗口。如果所有其他方法都失败了,请为用户提供选项/首选项以选择在启动时打开哪些窗口。

另一件事:作为桌面应用程序,使用就地编辑。不要让用户单击“编辑”链接或按钮来更改数据库记录,就像许多 Web 应用程序所做的那样。让用户在显示数据的表中直接更改记录。这使交互更简单、更快,并降低了应用程序的复杂性(窗口数量)。

于 2009-08-06T14:45:49.987 回答
0

http://richnewman.wordpress.com/2007/10/26/user-interface-design-for-business-applications/

原来我所追求的是一个“MDI”(多文档界面),即使这些文档不一定是相同的类型。本文介绍了一些常见的 MDI 样式,并以一个很好的建议作为结尾。

于 2009-08-07T22:24:15.830 回答