Partilhar via


CWaitCursor::CWaitCursor

Para exibir um cursor de espera, declarar apenas um objeto de CWaitCursor antes do código que executa a operação longa.

CWaitCursor( );

Comentários

O construtor faz automaticamente o cursor de espera a ser exibido.

Quando o objeto sair do escopo (no final do bloco no qual o objeto de CWaitCursor está declarado), o destrutor define o cursor para o cursor anterior.Ou seja o objeto realiza a limpeza necessário automaticamente.

Você pode aproveitar o fato de que o destrutor é chamado no final do bloco (que pode ser antes do final da função) para fazer o cursor de espera ativa somente a parte de sua função.Essa técnica é mostrada no segundo exemplo abaixo.

ObservaçãoObservação

Devido a como os construtores e destructors funcionam, os objetos de CWaitCursor sempre são declarados como variáveis locais — nunca são declarados como variáveis globais, nem são atribuiu com new.

Exemplo

// 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

Cabeçalho: afxwin.h

Consulte também

Referência

Classe de CWaitCursor

Gráfico de hierarquia

CWaitCursor::Restore

CCmdTarget::BeginWaitCursor

CCmdTarget::EndWaitCursor