0

基本的に私の質問は、特定のフレームで GIF を停止する方法です。

私はすでにGIFで画像が設定されている画像ボックスを持っており、2つのイベントEnterを作成し、Leave

    private void pictureBox1_MouseEnter(object sender, EventArgs e)
    {
        pictureBox1.Image = Properties.Resources.LOGODEFAULT1;
    }
    private void pictureBox1_MouseLeave(object sender, EventArgs e)
    {
        pictureBox1.Image = Properties.Resources.LOGOLEAVE1;
    }

私が欲しいのは、最後のフレームでGIFを停止することです(すべてのgifは7フレームで構成されています)私はImageAnimatorとImageStopを試しました

 private void pictureBox1_MouseEnter(object sender, EventArgs e)
    {
        ImageAnimator.Animate(pictureBox1.Image, OnFrameChanged1);
    }
    private void pictureBox1_MouseLeave(object sender, EventArgs e)
    {
        ImageAnimator.StopAnimate(pictureBox1.Image, OnFrameChanged2); 
    }
    private void OnFrameChanged1(object sender, EventArgs e)
    {
        pictureBox1.Image = Properties.Resources.LOGODENTER;
    }
    private void OnFrameChanged2(object sender, EventArgs e)
    {
        pictureBox1.Image = Properties.Resources.LOGOLEAVE1;
    }
4

1 に答える 1

0

Image.SelectActiveFrame Methodを使用できると思います。

于 2013-07-20T13:59:38.653 に答える