- PR -

C#でアニメーション作成

1
投稿者投稿内容
紗弥
会議室デビュー日: 2006/01/27
投稿数: 3
投稿日時: 2006-01-27 12:38
こんにちは。
検索してみたのですが、該当する記事がなかったので、
書き込みさせて頂きます。
私は、Visual C#.NET でアニメーションを作っているのですが、
肝心のプログラムがまったくわかりません。
アニメーションに使うイラストと、フォームのデザインは、
してあります。
ボタンを押すと、□秒ごとにあらかじめ用意された画像が
連続で表示されるというプログラムです。
よければ教えて頂けないでしょうか。
よろしくお願いします。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-01-27 12:45
引用:

紗弥さんの書き込み (2006-01-27 12:38) より:

私は、Visual C#.NET でアニメーションを作っているのですが、
肝心のプログラムがまったくわかりません。


アニメーションといっても、どういう手法でやりたいですか?
DirectX? GIF アニメ?

引用:

アニメーションに使うイラストと、フォームのデザインは、してあります。


イメージがあるなら GIF で固めて再生するのが 1 番手軽かな。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
Tdnr_Sym
ぬし
会議室デビュー日: 2005/09/13
投稿数: 464
お住まい・勤務地: 明石・神戸
投稿日時: 2006-01-27 13:43
こんにちは。

引用:

紗弥さんの書き込み (2006-01-27 12:38) より:
私は、Visual C#.NET でアニメーションを作っているのですが、
肝心のプログラムがまったくわかりません。



AVIファイルを作成して、アニメーションコントロールで再生…
と、思ったのですが、なぜか.NET Frameworkにはアニメーションコントロールがない!?
残念(>_<)
まるく
大ベテラン
会議室デビュー日: 2004/01/09
投稿数: 181
投稿日時: 2006-01-27 14:17
引用:

ボタンを押すと、□秒ごとにあらかじめ用意された画像が
連続で表示されるというプログラムです。


□のオーダーが気になります。
秒間十数コマであれば、皆さんが書かれているように動画としてファイルをまとめる方が良いと思います。
紙芝居レベルでゆっくり切り替えるのであれば、フォームにPictureBoxとボタンを貼り付けて、下記のようなノリで。画像が大きくて切り替えがスムーズにいかないならもう一工夫要るかもです。

コード:
private string[] _imageFiles = new string[]{"c:\Test1.jpg", "c:\Test2.jpg", "c:\Test3.jpg"};

private void button1_Click(object sender, System.EventArgs e)
{
    foreach (string filename in _imageFiles) 
    {
        Image img = new Bitmap(filename);
        this.pictureBox1.Image = img;
        Application.DoEvents();
        System.Threading.Thread.Sleep(1000);
        img.Dispose();
    }
}

紗弥
会議室デビュー日: 2006/01/27
投稿数: 3
投稿日時: 2006-02-03 11:12
返事が遅くなってすいません。
動画の速度は、一枚0.5秒で、
画像の形式はgifです。

じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-02-03 11:15
引用:

紗弥さんの書き込み (2006-02-03 11:12) より:

動画の速度は、一枚0.5秒で、
画像の形式はgifです。


ならば、GIF アニメで良いと思いますが...
0.5 秒程度なら、PictureBox でもいけるかなぁ。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
紗弥
会議室デビュー日: 2006/01/27
投稿数: 3
投稿日時: 2006-02-03 12:15
できれば、一枚一枚表示する形にしたいんです。

ところで、まるくさんのプログラムを実行させて
みたのですが、
Image img = new Bitmap(filename);
の所で、
'System.ArgumentException' のハンドルされていない例外が system.drawing.dll で発生しました。

追加情報 : 使用されたパラメータが無効です。

と出てしまいました。
画像のアドレスを変えたりしたのですが上手く
いきません。
どうすればいいでしょうか
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-02-03 12:37
引用:

紗弥さんの書き込み (2006-02-03 12:15) より:

Image img = new Bitmap(filename);


Bitmap bmp = new Bitmap(filename);

の方が自然だと思いますが。

引用:

'System.ArgumentException' のハンドルされていない例外が system.drawing.dll で発生しました。
追加情報 : 使用されたパラメータが無効です。
と出てしまいました。


そのままです。
引数に指定している filename が無効なんでしょう。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
1

スキルアップ/キャリアアップ(JOB@IT)