Deprecated: the_author_ID の使用はバージョン 2.8.0 から非推奨になっています ! 代わりに the_author_meta('ID') を使ってください。 in /var/www/html/blog/wp-includes/functions.php on line 4779
2
概要
Windows Forms Applicationでもコントロールをアニメーションで動かしたい!ということでライブラリ化してみました。
基本非同期で動作するものでスムーズな動作ができます。
また、JavascriptのjQueryのような感じにしたいので1行で一気に命令を書いてしまえるよう、工夫してみました。
サンプルソース
1つのコントロールを動かす
panel1.Animate("Location", new Point(39, 24)).Execution()
コントロールから直接Animateを発行することができます。
Animateを呼び出すだけではアニメーションは実行されません。必ず最後にExecutionを呼び出してあげてください。
順番に動かす
AnimateQueue.Create() .AddAnimate(panel1, "Location", new Point(39, 24)) .NextAnimate(panel2, "Location", new Point(244, 23)) .Execution();
AnimateQueue.Create()を呼び出すことでインデント的にソースコードが綺麗になります。
キューにアニメーションを追加する場合はAddAnimate
アニメーションが終わった後に次のアニメーションを指定する場合はNextAnimateを呼び出します。
同時に動かす
AnimateQueue.Create() .AddAnimate(panel1, "Location", new Point(39, 24)) .AddAnimate(panel2, "Location", new Point(244, 23)) .Execution();
順番に動かす場合はAddAnimateをズラズラっと追加していくだけです。
これで同時に動かすようにキューに追加できます。
オプション
panel1.Animate("Location", new Point(39, 24), new AnimateOption() { Quority = 5, Speed = 500, }).Execution();
アニメーションにオプションを持たせることも可能です。
オプションは以下の通りです。
Query | 1フレームにかける時間(ミリ秒)を指定します。小さければ小さいほど滑らかに動きます。 |
Speed | アニメーションにかける時間(ミリ秒)を指定します。小さければ小さいほど早く動きます。 |
Type | アニメーションの動きを変更することができます。 Cos(標準) / Sin/ Straight(等速) |
Async | trueの場合、ThreadPoolを使い非同期で実行します。 |
ただし、AddAdnimateやNextAnimateメソッド等は動きを変えるTypeプロパティしか設定することができません。
AnimateQueueに追加されているAnimateの場合、Animateを発行してからオプションを設定してもQuery/Speedプロパティはキューの設定に上書きされます。
AnimateQueue側のオプションを変更してください。
ダウンロード
こちらから無料でダウンロードできます。
[wpdm_file id=12]
すべて自己責任でご使用ください。
逆コンパイル等は禁止です。ソースコードが必要な場合はご連絡ください。
ライブラリ単体での再配布は禁止致します。