CWaitCursor::CWaitCursor
Para mostrar una espera un cursor, sólo es necesario declarar un objeto de CWaitCursor antes del código que realiza la operación larga.
CWaitCursor( );
Comentarios
El constructor provoca automáticamente el cursor de espera que se muestre.
Cuando el objeto salga del ámbito (al final del bloque en el que se declara el objeto de CWaitCursor ), su destructor establece el cursor al cursor anterior. Es decir el objeto realiza la limpieza necesaria automáticamente.
Puede aprovechar el hecho de que se llama al destructor al final del bloque (que podría estar antes del final de la función) para crear el activo del cursor de espera en solo la parte de la función. Esta técnica se muestra en el segundo ejemplo siguiente.
Nota
Debido a cómo funcionan los constructores y destructores, los objetos de CWaitCursor se declaran siempre como variables locales — los nunca declaran como variables globales, ni se asignaron con nuevo.
Ejemplo
// The following example illustrates the most common case
// of displaying the wait cursor during some lengthy
// processing.
void LengthyFunction()
{
// perhaps you display a dialog box before displaying a
// wait cursor
CWaitCursor wait; // display wait cursor
// do some lengthy processing
Sleep(1000);
} // destructor automatically removes the wait cursor
// This example shows using a CWaitCursor object inside a block
// so the wait cursor is displayed only while the program is
// performing a lengthy operation.
void ConditionalFunction()
{
if (SomeCondition)
{
CWaitCursor wait; // display wait cursor in this block only
// do some lengthy processing
Sleep(1000);
} // at this point, the destructor removes the wait cursor
else
{
// no wait cursor--only quick processing
}
}
Requisitos
encabezado: afxwin.h