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

如何指示表中的列是可排序的(UI设计问题)?

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

    在我正在使用的应用程序中,有表格数据(对于记录来说,它是一个使用JAVA Swing应用程序)。 JTables )在某些情况下,可以通过单击列标题对数据进行排序。 我想知道的是,如果给定的列是可排序的或不可排序的,向用户指示什么是一种好方法?

    我提出了以下可能性。

    1)在每个可排序列中放置一个图标,指示它是可排序的。我个人不喜欢这个选择。

    2)当鼠标悬停在标题上方时,将鼠标光标更改为其他内容,以指示它是可排序的。

    3)将鼠标悬停在列上方时,在工具提示文本中添加注释,说明该列是可排序的。

    有人有其他建议吗?

    更新:

    我认为澄清是正确的。 我的问题是 如何指示给定列 目前 已排序。这已经通过向上/向下排序三角形范式实现。 我想给用户一个关于哪些列的线索 可以 在他们单击标题进行排序之前进行排序。

    更新2: 我想我应该解释一下为什么我没有完全按1号期权出售。在我看来,如果要放置一个图标来指示哪些列 可排序,这将增加视觉混乱。在这种情况下,有时用户界面会在“鼠标悬停”时发生变化。举个例子:WindowsVista和7允许在一列上添加一个过滤器,但是这个指示器直到你用鼠标悬停在标题上才出现。

    7 回复  |  直到 6 年前
        1
  •  5
  •   Sean    6 年前

    当你处理用户界面时,你必须考虑到用户的期望。我几乎总是建议您遵循您的用户所期望的模式。因此,我建议使用选项1的版本)

    RememberME's Post描述了如何工作-您仍然可以在列标题中使用箭头-一个选项是在标题中放置箭头图标,但如果该图标已排序,则更改其状态(例如,如果数据集当前按此列排序,则突出显示“向上”或“向下”按钮)。

    编辑: Windows资源管理器示例可能不是这里的最佳示例。我的原文引用如下:

    在Windows资源管理器和几乎所有 窗体数据报有一个小图标, 通常是上下箭头, 指示列可排序。 尝试使用Windows资源管理器 看看它的工作方式。

        2
  •  2
  •   RememberME    14 年前

    在许多应用程序中,三角形表示可排序,因此我认为这是向用户b/c传递信息的最佳方式。这是他们最可能熟悉的标准。

    我认为jquery插件来自 DataTables.Net 是个很好的例子。你可以看一看,看看你是否喜欢它的外观/功能并模仿它。向上和向下都表示可排序。只有一个或另一个指示它正在被排序。如果列不可排序,则根本没有图标。他们的示例还将指针从箭头更改为手形指针,以指示您可以单击标题。

    http://i48.tinypic.com/vp9k3k.jpg

        3
  •  0
  •   AndreiM    14 年前

    我认为标准的方法基本上是选项1:要么显示最初排序的数据,用一个向上或向下的小箭头(升序/降序),要么sort+在单击列标题时立即显示图标。

        4
  •  0
  •   Nixuz    14 年前

    我认为在列标题下面有一个小箭头或三角形图标,您可以单击它按列排序,这是最好的选择,因为它很容易从视觉上看到,而且使用起来非常直观。

        5
  •  0
  •   Pointy    14 年前

    对于桌面应用程序和网页中的可排序表视图,三角形上/下排序图标几乎是标准的。您可能不喜欢它们,但您的用户可能已经习惯了它们(即使他们没有意识到)。

    当然,您应该在可点击元素上更改鼠标光标。

        6
  •  0
  •   Jay    14 年前

    对于任何可点击的内容,您都应该执行2。

    数字1也不错,通常是一个根据排序顺序向上或向下指向的三角形。

    为了表示可点击性,您还可以在可排序列上使用蓝色下划线文本,在不可排序列上使用纯深灰色文本——HTTP链接外观对几乎所有用户来说都是一个众所周知的设备,但它本身并不表示可排序性。更确切地说,用户可能希望单击该按钮将其带到其他屏幕或列表,就像超链接通常那样。

        7
  •  -1
  •   tucuxi    14 年前

    我可能有点笨,但是柱子是什么样的 可分类?

    几乎任何事情都可以排序;即使没有严格的“大于”关系,至少会有一个“等于”,然后排序只意味着“把相等的东西放在一起”。

    串?尝试按字母顺序排序。图像?按红、绿、蓝的百分比排序(或者,如果你想花哨,比较颜色柱状图)。位置?使用到罗马或任何其他任意位置的距离。

    在某些列上排序可能比在其他列上排序有用得多;但是我很难找到一种列类型,如果 避免 正在进行排序。