9

谁能给我一个他们认为繁忙的游标是合理的场景?我觉得从用户的角度来看它们总是一个坏主意。澄清:繁忙的光标是指当用户无法再与应用程序交互时,他们只能移动沙漏鼠标指针并吹口哨。

4

12 回答 12

11

总之,我认为只有在等待间隔非常短(2 秒或更短)并且执行多线程的认知开销可能会导致应用程序不太稳定时,才应该阻止用户在您的应用程序中执行操作。有关更多详细信息,请参见下文。

对于持续时间少于 0.1 秒的操作,您通常不需要进行异步操作,甚至不需要显示沙漏。

对于持续时间在 0.1 到 2 秒之间的操作,您通常不需要进行异步操作。只需将光标切换到沙漏,然后进行内联工作。视觉提示足以让最终用户满意。

如果最终用户启动一个只需要几秒钟的操作,他就处于一种“专注”的思维模式,在这种模式下,他在潜意识里等待他的行动结果,而且他还没有把他的有意识的大脑关掉那个特别的焦点。因此,在如此短的时间内阻止用户界面(使用视觉指示器表明已发生这种情况)是完全可以接受的。

对于持续时间超过 2 秒的操作,您通常应该采用异步方式。但即便如此,您也应该提供某种进度指示器。人们发现在没有刺激的情况下很难集中注意力,而 2 秒的时间足以让最终用户自然地从有意识的“专注”活动转移到有意识的“等待”活动。

当他们处于等待模式时,进度指示器为他们提供了一些东西来占据他们,并且还提供了确定他们何时将切换回他们的“专注”上下文的方法。视觉提示为大脑提供了一些东西来构建这些上下文切换,而不需要太多有意识的思考。

混乱的地方是您的操作通常在 X 时间内完成,但偶尔需要 Y,其中 Y 远大于 X。这可能发生在远程操作中,例如通过网络到达。那时您可能需要上述操作的组合。例如,考虑在前 2 秒显示一个鸡蛋计时器,然后才引入进度指示器。这避免了在没有中间步骤的情况下将最终用户从“集中”上下文直接切换到“等待”上下文。

于 2009-01-03T18:58:13.483 回答
5

重要的并不是繁忙的光标,但绝对重要的是,始终向用户反馈正在发生的事情以响应他们的输入。重要的是要意识到,没有忙碌的光标、进度条、颤动器、闪烁的按钮、旋转的指挥棒、跳舞的小丑……什么都没有关系——如果你没有它,而电脑只是坐在那里无所事事,计算机在用户看来已损坏。

每个用户操作的即时反馈非常重要。

于 2009-01-03T13:11:14.603 回答
4

当用户在操作完成之前不能做任何事情时,您会显示一个忙碌的光标 - 包括退出应用程序。

我觉得有趣的是,您在 Web 浏览器中看不到繁忙的光标——也许这就是人们如此喜欢它们的原因。

不,等等,我有更好的答案。 当计算机正在思考时,您会显示一个忙碌的光标

于 2009-01-03T07:27:53.923 回答
4

我认为您可能是对的:在一个体面的异步应用程序中,您永远不需要显示忙碌的光标。即使大的最后操作正在完成,用户也总是可以做某事。

也就是说,有时像 Netbeans 或 Eclipse 甚至 Visual Studio 这样的 Java 应用程序会挂起,没有忙碌的光标,也没有希望。但在这种情况下,繁忙的光标可能也无济于事......但我认为你是对的:繁忙的光标来自应用程序的非多线程时代。例如,在 Flex 应用程序中,一切都是自动事件驱动的回调,因此设置繁忙的光标毫无意义(当然,尽管可能)。

于 2009-01-03T09:01:23.453 回答
2

当一个人在网络浏览器上点击刷新按钮时,忙碌的光标必须立即出现,告诉用户让他们知道页面正在加载。

我认为是Don't Make Me Think说人类可容忍的加载时间为零秒。

谷歌说:

响应式

编写赢得世界上所有性能测试的代码是可能的,但是当用户尝试使用它时,仍然会激怒他们。这些是响应不够快的应用程序——那些感觉迟钝、长时间挂起或冻结,或者处理输入时间过长的应用程序。

于 2009-01-03T07:38:29.830 回答
2

它有两个目的:

  1. 向用户指示正在发生的事情。
  2. 向用户表明现在什么都不能做。

忙碌的光标是比没有更好的操作信号。对于更持久的操作,应该使用更好的东西。例如,在检索页面时浏览器仍然可以运行,甚至还有一个按钮可以停止操作。由于用户界面功能齐全,因此无需使用忙碌光标。然而,即使在过渡阶段的这种情况下,例如开始操作或停止操作时,也可以使用繁忙光标。

于 2009-01-03T08:51:02.023 回答
0

我尝试将它们用于可能需要 0.5 到 3 秒的任何操作,对于更长的操作,我认为应该使用具有足够信息的进度指示器。

于 2009-01-03T07:26:18.543 回答
0

我至少在 Fedora 8 中注意到,当应用程序设置“忙碌”光标时,实际上会显示“忙碌互动”光标。我猜这是因为系统仍然响应鼠标输入(如拖动窗口等)。顺便说一句,在 linux 上明确选择“忙碌的交互”光标很棘手: http ://www.pixelbeat.org/programming/x_cursors/

于 2009-01-03T14:01:30.557 回答
0

我相信繁忙的光标唯一能做的就是告诉用户......

我并没有完全无视你,我只是在做其他可能需要一段时间的事情

于 2009-01-03T15:18:59.620 回答
0

我只会将它们用于快速完成任务,比如在半秒内完成。如果有任何事情需要更长的时间,那么应该弹出一个进度对话框,或者一个进度条应该出现在状态栏或界面的其他地方。

如果需要太长时间才能完成,用户应该始终能够取消操作。

作为对评论的回应,忙碌光标仅在半秒左右可见,因为一旦进度对话框启动,它应该变为那些“半忙碌”光标之一,或者只是普通的箭头光标。

除非在极端情况下,否则您应该避免使用繁忙的光标,如果您认为需要一个,那么请三思而后行重新设计。

于 2009-01-03T15:30:28.207 回答
0

虽然绝对有必要提醒用户您的应用程序正在执行某些操作,但繁忙的光标仅在处理的前几秒钟有用。对于超过 15-20 秒的延迟,必须显示其他内容,例如进度条、状态消息、消息框等。人们认为您的软件在一分钟左右后已锁定,并会尝试终止它。有时,整体视觉提示与忙碌的光标一样重要。

例如,具有在选项卡中的操作完成之前不以适当的突出显示响应的选项卡的应用程序可以通过临时更新选项卡直到所有操作完成来修复。有时,只需一点优化或重构就可以清除诸如此类的糟糕的用户界面响应。

于 2009-01-03T20:06:39.087 回答
-1

例如,表示您单击了一个按钮,即使它还没有完成对事件的处理。如果没有任何指示,用户可能会尝试再次单击该按钮,从而导致各种不良情况。

于 2009-01-03T07:25:33.960 回答