Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
User interface 切换OK Cancel和Cancel OK以强制用户交互?_User Interface_Usability - Fatal编程技术网

User interface 切换OK Cancel和Cancel OK以强制用户交互?

User interface 切换OK Cancel和Cancel OK以强制用户交互?,user-interface,usability,User Interface,Usability,这是受到这个问题的启发 我记得在某个地方读过关于在某些情况下切换OK Cancel/Cancel OK的概念,以防止用户在没有阅读内容的情况下点击信息弹出窗口或对话框。据我记忆所及,这还包括移动OK按钮的位置(水平,从左到右),以防止用户仅仅记住单击的位置 这真的有意义吗?这是强迫用户“先思考/阅读,然后点击”的好方法吗?还有其他适用于这种情况的概念吗 我特别想到一个与安全相关的应用程序,在这个应用程序中,出于习惯而轻率地按OK可能会导致潜在的危险情况,而取消则会导致安全状态 请不要这样做,除非

这是受到这个问题的启发

我记得在某个地方读过关于在某些情况下切换OK Cancel/Cancel OK的概念,以防止用户在没有阅读内容的情况下点击信息弹出窗口或对话框。据我记忆所及,这还包括移动OK按钮的位置(水平,从左到右),以防止用户仅仅记住单击的位置

这真的有意义吗?这是强迫用户“先思考/阅读,然后点击”的好方法吗?还有其他适用于这种情况的概念吗


我特别想到一个与安全相关的应用程序,在这个应用程序中,出于习惯而轻率地按OK可能会导致潜在的危险情况,而取消则会导致安全状态

请不要这样做,除非你真的、真的、真的确信这是绝对必要的。这是一个试图通过技术手段纠正粗心大意和愚蠢的案例,而这类事情几乎从未奏效

您可以使用动词或名词,而不是典型的Windows“确定/取消”按钮标题。这将在不牺牲可预测性的情况下给你带来即时注意力的好处。

nooooooo

在我们的一款产品中,我们有一个用户选项,要求在按住Ctrl键的同时单击以执行与安全相关的命令


但是,在我的书中,用交换位置或四处移动的按钮来吓唬用户是不好的设计。

但是如果确定/取消不一致,可能会使用户感到不安或不安

而且不要像某些EULA那样,在“同意”按钮可点击之前,用户被迫将面板滚动到底部。有时你无法让用户仔细阅读所有内容

如果他们真的需要阅读,在按钮出现之前可能会有短暂的延迟?这也可能会让用户感到恼火,但如果这是一个非常关键的问题,那么它是值得的


编辑:或者需要某种额外的机制,而不仅仅是单击“接受”非常重要的决定。复选框、按键、密码等。

不,没有意义。你不会“让”用户阅读。如果决定如此关键,那么你最好找到一种减轻危险的方法,而不是给一个假定粗心的使用者一把上了膛的枪


将“安全”按钮设为默认值(由enter/spacebar/等触发)是一个好主意,因为如果它们让用户感到意外,那么针对预期窗口的击键不会意外触发意外操作。但即使在这种情况下,您也必须意识到,当用户意识到他们所做的事情时,选择已经消失了(以及对话框上的任何解释性文本)。同样,您最好找到另一种方式向他们提供信息。

我建议使用红色文本通知用户这是一项关键操作,并解释这是一项不安全操作的原因

另外,不是两个按钮,而是两个单选按钮和一个“确定”按钮,默认选择“不继续”单选按钮


这将为用户提供一个不寻常的界面,增加认知负荷,降低速度。这就是你在这里想要的。

与任何与用户交互的东西一样,在帮助用户和让人讨厌之间,你有一个很小的空间。我不知道您的具体要求,但您的想法对我来说似乎还行(双关语)。

听起来您的用户正在安全应用程序中执行一种输入向导

一些想法可以替代移动按钮

  • 在按下final ok(最终确认)之前,有一个最终屏幕来查看所有输入

  • 在他们点击ok后有一个确认框,解释此操作的结果

  • 一种免责声明,要求您在用户可以继续之前选中一个复选框以表示同意


  • 如果必须使用对话框,请在对话框中的按钮上添加描述性标题

    例如,不要使用“确定”和“取消”按钮,而是让它们显示“发送发票”和“返回”,或对话框上下文中合适的任何内容

    这样,文本就在他们的光标下,他们有很好的机会理解

    苹果人机界面指南网站是一个很好的参考,可读性很强

    下面是一个示例图像:

    (来源:)

    不要改变它-你只会弄糊涂,帮不了你

    相反,要像FireFox一样,在5秒内不要激活控件。-只要确保你包括一个计时器或某种指示器,让他们有机会仔细阅读。如果他们点击它,它会切断计时器,但要求他们再点击一次

    不知道会有多好,但这会有帮助


    记住,就像那个男人说的:你不能修理傻瓜。

    这会让我头疼的。尤其是当我意外关闭应用程序并忘记保存文件时:(

    我看到了另一个在点击前强迫用户“阅读”的好例子:Firefox总是将按钮灰显(又称禁用)为“OK”按钮。因此,用户必须等待大约5秒钟才能继续做任何事情。我认为这是我所看到的强迫用户阅读(和思考)的最好努力


    我看到的另一个例子是“许可证和协议”安装程序的页面。其中一些页面要求用户向下滚动到页面末尾,然后才能继续下一步。

    在某些情况下,我所做的是比较消息框显示的时间和关闭的时间。如果少于“x”秒,它会立即弹出。这迫使m、 在大多数情况下,阅读屏幕上的内容,而不是盲目地点击屏幕

    也很容易做到

    大概是这样的:

    Dim strStart As DateTime = Now
    While Now < strStart.AddSeconds(5)
        MessageBox.Show("Something just happened", "Pay Attention", MessageBoxButtons.OK)
        If Now < strStart.AddSeconds(5) Then strStart = Now Else Exit While
    End While
    
    Dim strStart As DateTime=Now
    而不是
    
    "Are you sure you want to change the extension from .py to .ps?"
    If you perform the change, the document could be opened by a different application.
    
    (Use .ps)   (Keep .py)