Compartir a través de


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

Vea también

Referencia

CWaitCursor Class

Gráfico de jerarquías

CWaitCursor::Restore

CCmdTarget::BeginWaitCursor

CCmdTarget::EndWaitCursor