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

确定并取消对话框窗口右侧或左侧的按钮?

  •  12
  • msfanboy  · 技术社区  · 16 年前

    关于用户直观的使用,什么更好?

    确定…取消或取消…在对话框窗口中确定?

    编辑:

    我踩进了一个陷阱:p

    似乎有人误解了我…

    我不是说在对话框的左边/右边有“确定”和“取消”。

    我的意思是“确定”按钮应该是右键指向“取消”按钮还是其他方向?

    我的意思是:)

    15 回复  |  直到 12 年前
        1
  •  6
  •   Zamboni    16 年前

    为所有的产品设定一个标准,这样它们都有相同的行为。
    调查并遵循您正在开发的操作系统/平台的标准。
    考虑到某些文化/地区可能期望不同的按钮位置。
    让你可以轻松地改变主意,而不必重温每一个对话。

        2
  •  10
  •   Bobby Jack    16 年前

    都没有。”“OK”和“Cancel”是对话框按钮的糟糕选择。对话框按钮实际上应该用每个按钮将执行的操作进行标记-例如

    Do you want to save this unsaved file before exiting the application?
    
                     [Save]  [Don't Save]  [Don't Exit]
    

    在这两种情况下,我都建议按“最有可能”的顺序从左到右排序,因此在我的示例中,我假设保存是最有可能的选择,然后退出而不保存,然后不退出。对于从左到右的语言来说,这是最直观的,因为用户最快就会找到他们喜欢的选择,但其他语言的方向也会有所不同。

        3
  •  8
  •   Richard    13 年前
    • Windows先确定
    • 苹果排在最后

    (From the Nielsen Norman Group)

        4
  •  4
  •   SigTerm    16 年前

    确定…取消或取消…在对话框窗口中确定?

    在英语软件中,OK应该在cancel的左边。即。:

    +------+ +--------+
    |  OK  | | Cancel |
    +------+ +--------+
    

    对于其他语言,您应该遵循通常使用的任何语言。如果用从右到左的语言,我不会感到惊讶。好的,从取消到右。

    如果你真的关心图形用户界面的质量…
    1。键盘焦点应该已经在“OK”上。
    2。用户应该能够使用选项卡在“确定”和“取消”之间移动。注意力不应该停留在某种附加元素上。
    三。所有按钮和图形用户界面元素都应该有健全的标签顺序。当你专注于“确定”并按下“选项卡”时,你应该跳到“取消”,而不是其他无用的控件。
    4。按下Escape将触发“取消”。
    5。关闭窗口应触发“取消”
    6。按“回车” 可以 等于按“确定”(有些软件使用,有些不使用)。
    7。按钮应指定“加速器”。即按钮应标上**O**K*(O下划线)和**C**ANCEL*(C下划线),按ALT+O应按“确定”,按“ALT+C”应按“取消”按钮。
    8。键盘加速器应正确分配给应用程序支持的所有语言。按下ALT+ “您的语言中不能用作任何单词第一个字母的字母” 感觉怪怪的。

    Afaik,质量图形用户界面遵循这些准则。忘记了“键盘加速器”,混乱的标签顺序(IMO)是一种草率的表现,一些“超级用户”会立即讨厌你犯的错误。

    此外,如果应用程序是全屏的,您可以考虑使用以下技巧-当“确定/取消”出现时,在按钮之间移动鼠标光标(或在“确定”按钮顶部),当窗口关闭时,恢复先前的位置。注意:这更适合全屏幕游戏,在“标准”GUI中使用它可能会很烦人。

        5
  •  3
  •   Sachin Shanbhag    16 年前

    如果您有一个对话框模式窗口,那么它在右侧总是看起来很好。

    个人推理就像一个用户从左到右阅读,最后他想在阅读完后看到右边的按钮…

    我也找到了这篇文章。有趣-

    http://measuringuserexperience.com/SubmitCancel/index.htm

        7
  •  2
  •   Vibralux    16 年前

    大多数Windows现在使用的是OK和Cancel,左边是OK,右边是Cancel,默认的单击按钮是OK。

    如果对话框不要求执行任何可能有害的操作,则通常使用此选项。例如,如果是,他们想要删除一些通常不会删除的内容,那么交换它们,并将cancel作为默认值。因此,人们反复检查自己当CLCIKING OK和较少可能误点击取消。

    另外,当阅读它时,OK首先出现,这允许用户快速轻松地阅读它,并接受它。

    希望这有帮助。

        8
  •  2
  •   peterchen    14 年前

    个人经验: 我发现在一列中右边的按钮是最不具争议的——也就是说:一旦你决定了这一点,就没有进一步的讨论,比如“左对齐、居中还是右对齐”?,当右对齐时,“OK”不应该得到一个固定的位置,即最右边?.

    Windows User Experience Guidelines (正如jay所引用的,有一个痛苦的根链接)说“提交按钮在一行中到达底部,右对齐,OK通常是最左边的”。

    样式指南没有明确说明“命令按钮”(即不提交对话框的按钮)。这些示例提示了右下角的提交按钮行和右上角的命令按钮列,尽管我个人认为这是不必要的。

        9
  •  1
  •   Ertan    16 年前

    我认为把默认的选择放在右边更好。在我看来,按右键比较容易(我不知道为什么),而且我可以在从左到右的阅读过程中快速地重新考虑我的想法。(我知道这是很长的一段时间,但可能会有所帮助)

        10
  •  1
  •   Don    16 年前

    我想我是少数,但我喜欢违约或预期的选择在左边。也许是从左到右,或者是第一个项目,所以我希望它能让我达到我想要的结果。

    在上面引用的链接中( http://measuringuserexperience.com/SubmitCancel/index.htm )调查中的一条评论提到“取消链接”。我在表单和类似表单中看到过,提交是一个按钮,重置是一个链接。我讨厌当我填写一张表格,然后点击重置按钮b/c时,它在右边,我不注意…

    我只要0.02美元。

        11
  •  1
  •   Steve S    16 年前

    不管你选什么都是错的。 不同的平台(win/mac/gtk/…)以及不同的区域/语言之间的约定各不相同,因此无论您使用什么顺序,都会有人认为这很混乱。最好的解决方案是根据系统类型和设置在运行时选择订单(除非它是一个Web应用程序,但我们谈论的是对话窗口,所以这是另一回事)。

    幸运的是,您不必实现最佳解决方案——它已经为您完成了。 现代的GUI工具包通常提供一些自动处理对话框按钮顺序的机制。 例如,qt提供QdialogButtonBox小部件。使用工具箱提供的小部件(或其他机制)。

        12
  •  0
  •   James    16 年前

    我想这类东西应该是区域性的,特别是基于从右到左或从左到右的阅读风格。
    对于一个美式英语用户:我个人会把OK框放在左下角,因为这是我已经习惯看到的布局。

        13
  •  0
  •   giants_01    16 年前

    我将研究自动创建“确定取消”弹出框的方式。例如,在Ajax控件工具包中有一个名为“modal popup”的扩展,它具有自动生成的通用“确定取消”按钮。此外,在javascript中还有一些confirm()方法可以自动生成这些类型的按钮。就我个人而言,我喜欢看看这些开发人员如何布局弹出窗口并使用它们的实现,因为这可能是用户过去看到的。希望这有帮助。

        14
  •  0
  •   Connell    12 年前

    加上我的两美分-我更喜欢 Cancel, OK .

    对我来说,“是的,好的,继续”按钮自然就在右手边。在论坛或安装向导上转到“下一页”几乎总是在右手边。如果警报框中只有一个按钮,通常是居中或右对齐的。

    Cancel通常有效地执行“后退”操作,这几乎总是在任何东西的左侧:Web浏览器、安装向导。

    但最终取决于你。选择一个惯例并坚持下去!

        15
  •  0
  •   Felipe Leão    12 年前

    尼尔森诺曼集团 gives some good thoughts 关于这件事。他们认为,从UIX的角度来看,这两种方法都是正确的,因为这取决于您正在应用的规则。下面的摘录解释了一点…

    这两者都是合理的选择,人们可以为自己的偏好争论几个小时:

    • 上市 好的第一 支持自然的英语阅读顺序和 其他从左到右阅读的语言。许多其他按钮组 一个自然的进程(比如,是/否或上一个/下一个)。你应该 总是列出这些,以便读取顺序与逻辑顺序匹配 在这种情况下,确定/取消。此外,假设用户需要更多的OK 通常情况下,最好将此选项放在第一位,因此 通过键盘驱动的用户可以 少按一次键的首选。
    • 上市 好吧 改进 流程,因为对话框的结论“结束”。此外,作为 使用“上一个/下一个”,您可以认为“确定”是移动的选择。 用户向前移动,而“取消”则将用户向后移动。因此,OK应该与next位于同一位置:右侧。

    就我个人而言,我更喜欢第二个主题,在取消之前,不知何故,好让我觉得自己没有前进。如果你在一个基于网络的用户界面上这样做,你只需把焦点放在你认为更可能被用户按下的按钮上。

    推荐文章