在播放图像时,我应该将定时器间隔设置为“正常速度”的速度是多少?

时间:2015-06-28 02:47:48

标签: .net winforms

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;

namespace Player_Manager
{
    public partial class ScreenShotsPlayer : Form
    {
        FileInfo[] images;
        DirectoryInfo di1;
        int current = 0;

        public ScreenShotsPlayer()
        {
            InitializeComponent();

            di1 = new DirectoryInfo(@"e:\screenshots");
            images = di1.GetFiles("*.bmp");
        }

        private void button1_Click(object sender, EventArgs e)
        {
            timer1.Start();
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            if(pictureBox1.Image!=null)
        {
            var img = pictureBox1.Image;  
            pictureBox1.Image = null;     
            pictureBox1.Image.Dispose(); 
        }

        current = (current >= images.Length - 1) ? 0 : ++current;
        pictureBox1.Image = new Bitmap(images[current].FullName);
        pictureBox1.Refresh();
        }
    }
}

我在设计师中有一个计时器。当它设置为100毫秒时它太快了。 当它设置为1000毫秒时,它现在太慢了。

我在pictureBox中播放了1200张图片。我想知道速度应该是正常速度吗?

1 个答案:

答案 0 :(得分:0)

取决于原始数据的帧速率。

如果你有每秒24帧(标准电视信号),它将是1000/24,或大约42毫秒。但是这已经不到100了,你说的太快了(同样,你也很难让PictureBox持续快速刷新)。如果你不了解你的原始帧率,你只需做一些试验和错误,直到你得到一些关于正确的事情。