プラットフォーム SDK
AnimateWindow

ウィンドウを表示したり隠したりするとき、アニメーションを使った特殊効果を出すことができます。アニメーションには、ロール(巻き取り)アニメーションとスライドアニメーションの 2 種類があります。

BOOL AnimateWindow(
  HWND hwnd,     // アニメーション化するウィンドウのハンドル
  DWORD dwTime,  // アニメーションの時間
  DWORD dwFlags  // アニメーションの種類
);

パラメータ

hwnd
アニメーション化するウィンドウのハンドルを指定します。
dwTime
アニメーションの再生時間を、ミリ秒単位で指定します。通常、アニメーションは 200 ミリ秒間再生されます。
dwFlags
アニメーションの種類を指定します。次の 1 つ以上のフラグをセットします。
フラグ説明
AW_SLIDEスライドアニメーションを使います。既定値では、ロールアニメーションを使います。AW_CENTER フラグを同時にセットすると、このフラグは無視されます。
AW_ACTIVATEウィンドウをアクティブにします。AW_HIDE フラグと同時にセットしないでください。
AW_BLENDフェードイン効果を使います。dwTime パラメータは、ウィンドウを表示するときに使うアニメーションのフレーム数を示します。AW_HIDE フラグと同時にセットしないでください。
AW_HIDEウィンドウを隠します。既定値では、ウィンドウを表示します。
AW_CENTERAW_HIDE フラグをセットしたときは、ウィンドウを中心に向かって折り畳むようにして隠します。また、AW_HIDE フラグをセットしないときは、ウィンドウを中心から徐々に広げるように表示します。
AW_HOR_POSITIVEウィンドウを左から右に向かってアニメートすることによって、表示したり隠したりします。このフラグは、ロールアニメーションにも、スライドアニメーションにも使えます。AW_CENTER フラグと同時にセットすると、このフラグは無視されます。
AW_HOR_NEGATIVEウィンドウを右から左に向かってアニメートすることによって、表示したり隠したりします。このフラグは、ロールアニメーションにも、スライドアニメーションにも使えます。AW_CENTER フラグと同時にセットすると、このフラグは無視されます。
AW_VER_POSITIVEウィンドウを上から下に向かってアニメートすることによって、表示したり隠したりします。ロールアニメーションにも、スライドアニメーションにも使えます。AW_CENTER フラグと同時にセットすると、このフラグは無視されます。
AW_VER_NEGATIVEウィンドウを下から上に向かってアニメートすることによって、表示したり隠したりします。ロールアニメーションにも、スライドアニメーションにも使えます。AW_CENTER フラグと同時にセットすると、このフラグは無視されます。

戻り値

関数が成功すると、0 以外の値が返ります。
関数が失敗すると、0 が返ります。関数が失敗するのは、次のような場合です。

  • ウィンドウがウィンドウリージョンを使っている。

  • すでに可視になっているウィンドウを表示しようとした。

  • すでに隠れているウィンドウを隠そうとした。

拡張エラー情報を取得するには、GetLastError 関数を使います。

解説

AW_HOR_POSITIVE フラグまたは AW_HOR_NEGATIVE フラグと AW_VER_POSITIVE フラグまたは AW_VER_NEGATIVE フラグとを組み合わせることで、ウィンドウを対角線方向にアニメートし、表示したり隠したりできます。
ウィンドウとその子ウィンドウのウィンドウプロシージャで、WM_PRINT メッセージ、または WM_PRINTCLIENT メッセージを処理することが必要な場合があります。ダイアログボックス、コントロール、コモンコントロールは、すでに WM_PRINTCLIENT を処理しています。既定のウィンドウプロシージャは、すでに WM_PRINT を処理しています。

対応情報

Windows NT/2000:Windows 2000 以降
Windows 95/98:Windows 98 以降
ヘッダー:winuser.h 内で宣言
インポートライブラリ:user32.lib を使用

参照

Page view tracker