代码之家  ›  专栏  ›  技术社区  ›  Mizipzor

菜单栏布局/设计范例

  •  2
  • Mizipzor  · 技术社区  · 14 年前

    在“我的应用程序”菜单栏上执行一些重组。当查看其他应用程序时,似乎有两种不同的结构方式。

    无论是“老派”最常见的方式,动词/命令后跟主语。也就是说,你想做什么,想做什么。像这样:

    • 文件
      • 新的
        • 酒吧
      • 正常开放
        • 酒吧
      • 退出

    或者新应用程序有时会尝试的,可能是因为微软推出了 ribbon 结构。也就是说,您希望使用什么,以及要对其执行什么操作。像这样:

    • 文件
      • 退出
      • 新的
      • 正常开放
    • 酒吧
      • 新的
      • 正常开放

    这两个范例成立了吗?他们有名字吗?会帮助我提到他们和他们之间的差异。

    2 回复  |  直到 14 年前
        1
  •  3
  •   Michael Zuschlag    14 年前

    是的,顶层的菜单可以按它们所作用的对象类别(例如,foos或bars)或它们执行的操作类型(例如,归档操作)来组织。通常情况下,窗口顶部的菜单栏或功能区应按操作类型进行组织,以便为用户提供另一种方法,以查找上下文(右键单击)菜单的命令,这些菜单必须按对象类进行组织。

    也就是说,许多菜单层次结构,包括__Old School__one,将受益于__Flatted___“在每个级别上变得更宽而不那么深。深层次的层次结构意味着层叠菜单,使用起来既慢又难。在顶层很少有选择意味着一般的模糊标签提供很少的信息气味(什么是 File really mean 反正?).

    有几种方法可以在按操作类型组织菜单栏的同时解决此问题。首先,有一个简单的扁平化的老学校文件菜单,就像火狐一样:

    • 文件
      • 新福
      • 新建条形图
      • 敞口
      • 开杆
      • 退出

    问题在于,传统的文件菜单是为仅在一个主要对象类上运行的__document_应用程序设计的。例如,文字处理器操作纸张,电子表格程序操作工作表,图像编辑器操作图片,等等。当存在多个主体类时,文件会变得笨拙。两个类不是问题,但三个或更多是问题。

    在某些情况下,最好采用__Suite__方法,使其看起来像每个对象类都有一个单独的程序。将对象类选择从菜单栏中取出并放入“开始”菜单,在该菜单中,您已经安装了与打开该类主窗口的每个对象类对应的快捷方式。这些_应用程序_中的每一个仅对其类有新的和开放的作用:

    • 文件
      • 新的
      • 正常开放
      • 退出

    从某种意义上说,您已经扩大了菜单范围 在上面 层次结构中的菜单栏。这与其他桌面应用程序完全一致。如果用户倾向于在一个会话中只使用一个类,那么它是一个很有吸引力的选项。经常去“开始”菜单的旅行会变老。

    如果需要保留菜单栏中的所有内容,可以沿菜单栏展开“文件”菜单。

    • 文件
      • 保存
      • 打印
      • 退出
    • 新的
      • FOO公司
      • 酒吧
    • 正常开放
      • 酒吧

    许多具有多个主体类的应用程序是数据库应用程序,其中每个窗口显示多个对象(数据库记录)。用户是什么?打开?不是一个文件,而是一个 query result . 通常,用户几乎从未使用过空白窗口。即使对于数据输入,为了提供一些上下文(例如上次输入的记录),显示默认查询的结果通常也很有帮助,而且很少有害。如果用户希望向已显示的记录添加新记录,则它是“编辑”下的操作,而不是“文件”。所以我们可以消除新的。

    • 程序
      • 福斯
      • 酒吧
      • 退出
    • 文件
      • 查询
      • 关闭

    我建议您从mac osx中获得提示,并有一个退出程序菜单(在osx中,应用程序的名称是菜单标题)。程序菜单有按对象类标记的菜单项,但它们分别打开foo和bar窗口。您可以在这些窗口中填入默认的查询结果(即 能够 为空),或自动显示查询对话框供用户选择。文件下的查询菜单项弹出此对话框,允许用户随时更改窗口的查询。对于用户需要空窗口的边缘情况,此对话框可能包含空选项。

        2
  •  0
  •   Daniel May    14 年前

    我认为这更符合个人喜好。你认为什么最好?如果您没有在应用程序中实现功能区GUI,那么就不需要复制它们的结构。

    就我个人而言,我会选择第一个选项——“老派”,我发现它更直截了当,是解决问题最务实的方法。