Software:Windows wait cursor

From HandWiki
Short description: Waiting cursor used on Windows
Wait cursor
Windows 8 + 10 wait cursor.gif
The wait cursor in Windows 8.x and Windows 10
Other names
  • Busy cursor
  • Hourglass cursor
Operating systemMicrosoft Windows
TypeCursor

The Windows wait cursor, informally the Blue circle of death (known as the hourglass cursor until Windows Vista) is a cursor that indicates that an application is busy performing an operation. It can be accompanied by an arrow if the operation is being performed in the background.

The wait cursor can display on programs using the Windows API.

History

The older "hourglass cursor", used in Windows 9x, Windows NT 4.0, Windows 2000 and Windows XP.

From Windows 1.0 to Windows XP, it was represented by an hourglass. Windows Vista introduced a new, animated wait cursor. The wait cursor in Windows 7 was almost identical.[1] It is possible, however, to change the appearance of the cursor into the original hourglass cursor. Windows 8 introduced a new flat wait cursor. The new cursor is light blue on dark blue and removes the fade and the particles from the animated part.

Usage

There are two uses for the wait cursor: short term and long term. The wait cursor is a shared resource in the system across applications and windows. By default, when the mouse cursor is in a window, the cursor shown is controlled by the window's registered window class and handling of WM_SETCURSOR. Different scenarios can be used instead.[2]

In Microsoft Foundation Class Library (MFC) the wait cursor can be controlled by CWaitCursor. If a local instance is created, the wait cursor is reset when the instance goes out of scope. It is used primarily for short term wait cursors.[2]

In Windows Forms, each Control instance has a Cursor property, which can be controlled by the application itself. Control.Cursor is the cursor shown when the mouse is in the control's region; System.Windows.Forms.Cursor.Current is the cursor shown when the mouse enters any window of the application.[2]

For long term wait cursors, the UseWaitCursor property can be set (either Control level or application level) on one occasion and reset at another time.[2]

See also

References