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çã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