Choosing Appropriate Feedback

To determine which type of visual feedback to provide for a particular operation, consider these factors:

  • Whether your application can provide an estimate of the operation's progress.
  • Whether the operation blocks the user from issuing further commands in your application.
  • Whether your application has a dedicated space, such as a status bar, for indicating the status of operations.

The table below shows which type of feedback to provide for operations that usually take at least 1 second to finish. In the "Appropriate Feedback" column, "Internal progress animations" means progress animations displayed in an application's dedicated status area, and "External progress animations" means progress animations displayed somewhere other than in a dedicated status area— typically, in an alert box.

Table 7-2Visual feedback types for operations that take at least 1 second
Typical Duration > 5 seconds? User blocked from issuing further commands? Application has dedicated status area? Appropriate feedback
Yes Yes Yes Internal animation plus pointer feedback
Yes Yes No Pointer feedback
Yes No Yes Internal animation
No Yes Yes Internal animation plus pointer feedback
No Yes No External animation plus pointer feedback
No No Yes Internal animation
No No No External animation
Guidelines
  • Use a busy pointer whenever users are blocked from interaction with your application for 1 second or longer. Display the busy pointer less than 1 second after the operation begins.
  • If a command will likely take 10 seconds or longer to finish, provide a Stop or Cancel button, which can also be activated by pressing Esc, that lets users terminate the command's processing even if your application cannot undo the command's effects. See Section 7.6 ― Allowing Interruptions.
  • When using an external animation, leave the window containing the animation on-screen for at least 1 second after the operation has completed, with a successful completion message. Change the Stop or Cancel button to an OK button during this period— pressing this button should close the window immediately.