次の方法で共有


CWaitCursor::CWaitCursor

待機カーソルを表示するには、時間がかかる処理のコードの前に CWaitCursor のオブジェクトを宣言します。

CWaitCursor( );

解説

コンストラクターが自動的に待機カーソルを表示します。

オブジェクトがスコープ外 (CWaitCursor オブジェクトが宣言されたブロックの終わり) になると、デストラクターは、カーソルを以前のカーソルに戻します。つまり、オブジェクトは必要な後処理を自動的に行います。

独自の関数の一部のみの待機カーソルをアクティブにするために、デストラクター (関数の終了位置の前にある可能性のあるブロックの末尾に呼び出されるという事実を利用できます。この手法は次の 2 つ目の例に示します。

[!メモ]

それぞれのコンストラクターとデストラクターがどのように動作するか、CWaitCursor のオブジェクトは、常にローカル変数として宣言します。グローバル変数として宣言されて、newに割り当てられたあります。

使用例

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

必要条件

ヘッダー: afxwin.h

参照

関連項目

CWaitCursor クラス

階層図

CWaitCursor::Restore

CCmdTarget::BeginWaitCursor

CCmdTarget::EndWaitCursor