在我的应用程序菜单栏上进行一些重组。在查看其他应用程序时,似乎有两种不同的结构方式。
要么是“老派”最常见的方式,动词/命令后跟主语。即你想做什么,你想做什么。像这样:
- 文件
- 新的
- 富
- 酒吧
- 打开
- 富
- 酒吧
- 辞职
- 新的
或者是新应用程序有时会尝试的一种,可能是因为微软引入了它的功能区结构。即您想使用什么以及您想对其执行什么操作。像这样:
- 文件
- 辞职
- 富
- 新的
- 打开
- 酒吧
- 新的
- 打开
这两个范式成立了吗?他们有名字吗?将帮助我提及它们及其差异。
在我的应用程序菜单栏上进行一些重组。在查看其他应用程序时,似乎有两种不同的结构方式。
要么是“老派”最常见的方式,动词/命令后跟主语。即你想做什么,你想做什么。像这样:
或者是新应用程序有时会尝试的一种,可能是因为微软引入了它的功能区结构。即您想使用什么以及您想对其执行什么操作。像这样:
这两个范式成立了吗?他们有名字吗?将帮助我提及它们及其差异。
是的,顶层菜单可以按它们所作用的对象类别(例如,Foos 或 Bars)或它们执行的操作类型(例如,归档操作)来组织。作为一般规则,窗口顶部的菜单栏或功能区应按操作类型组织,以便为用户提供另一种方法来查找上下文(右键单击)菜单的命令,这些菜单必须按以下方式组织对象类。
也就是说,许多菜单层次结构,包括“老派”菜单,都将受益于“扁平化”——在每个层次上都变得更宽,深度更小。深层层次结构意味着级联菜单,使用起来既慢又笨拙。顶层的选项很少意味着提供很少信息气味的一般模糊标签(文件到底是什么意思?)。
有几种方法可以解决此问题,同时仍按操作类型组织菜单栏。首先,旧式文件菜单的简单扁平化,就像 Firefox 所做的那样:
问题在于,传统的“文件”菜单旨在用于仅在一个主体对象类上运行的“文档”应用程序。例如,文字处理器在论文上运行,电子表格程序在工作表上运行,图像编辑器在图片上运行,等等。当有多个主体类时,文件变得笨拙。两个班不是问题,但三个或更多是。
在某些情况下,最好采用“套件”方法,让它看起来像每个对象类都有一个单独的程序。从菜单栏中选择对象类并将其放在开始菜单中,您已在其中安装了与每个对象类相对应的快捷方式,这些快捷方式为该类打开了主窗口。这些“应用程序”中的每一个都只有 New 和 Open 仅作用于其类:
从某种意义上说,您已经扩大了层次结构中菜单栏上方的菜单。这与其他桌面应用程序完全一致。如果用户倾向于只使用一个课程进行会话,这是一个有吸引力的选择。频繁访问“开始”菜单会变老。
如果您需要将所有内容保留在菜单栏中,可以将“文件”菜单沿菜单栏展开。
许多具有多个主体类的应用程序是数据库应用程序,其中每个窗口显示多个对象(数据库记录)。用户“打开”的不是单个文件,而是查询结果。通常,用户几乎从未使用过空白窗口。即使对于数据输入,显示默认查询的结果以提供一些上下文(例如,上次输入的记录)通常很有帮助,而且很少有害。如果用户想要在已显示的记录中添加新记录,这是编辑下的操作,而不是文件。所以我们可以消除New。
我建议你从 Mac OSX 中获得灵感,并为 Quit 设置一个 Program 菜单(在 OSX 中,应用程序的名称是菜单标题)。Program 菜单有由它们的对象类标记的菜单项,但它们是动作——它们分别打开 Foo 和 Bar 窗口。您可以使用默认查询结果(可能为空)填充这些窗口,或者自动显示查询对话框供用户选择。文件下的查询菜单项弹出此对话框,允许用户随时更改窗口的查询。对于用户需要空窗口的边缘情况,此对话框可能包含一个 Empty 选项。
我觉得更多的是个人喜好。你认为最好的方法是什么?如果您没有在应用程序中实现功能区 GUI,则无需复制其结构。
就我个人而言,我会选择第一个选项 - “老派”,我发现它更直接,也是解决问题的最务实的方法。