6

アプリがインターネットを使用すると呼び出されるイベントがあります。イベントは、7フレームで構成されるアニメーションGIFを変更します。フレームを1回だけループさせるにはどうすればよいですか?

        private void trafficSendingActive(object sender, trafficEventArgs e)
        {
            txImage.Image = Properties.Resources.blip;
        }
4

4 に答える 4

7

GIF進行状況イベントが完了したときに、その画像(アニメーション化されていない)から単一のフレームを抽出できます。

txImage.Image = Image.FormFile("non-animated-frame-from-gif.jpg");

このWebサイトを使用して、gifからフレームを抽出できます:http://gif-explode.com/

于 2013-03-26T21:45:54.967 に答える
7

いつでも画像/gifを画像ボックス内にカプセル化できます。gifを停止する場合は、画像ボックスのEnabledプロパティをfalseに設定するだけです。

ちょっとした考え。

于 2013-06-09T11:48:02.743 に答える
5

を使用しSystem.Drawing.ImageAnimatorてgifアニメーションを開始/停止できます

// start
System.Drawing.ImageAnimator.Animate(txImage.Image, OnFrameChanged);

// stop
System.Drawing.ImageAnimator.StopAnimate(txImage.Image, OnFrameChanged);

private void OnFrameChanged(object sender, EventArgs e)
{
   // frame change
}
于 2013-03-26T22:01:26.330 に答える
5

pictureBox.Enabled = false;GIFを停止したい場合、およびGIFを実行したい場合に使用できますpictureBox.Enabled = true;

于 2016-06-12T13:11:27.053 に答える