プラットフォーム 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_CENTER | AW_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 を使用
参照
、