我在里面有 Timer3 滴答事件,我将 timer3 间隔设置为 numericupdown 值:
private void timer3_Tick(object sender, EventArgs e)
{
try
{
Image iOLd = this.pictureBox1.Image;
Image img = Image.FromFile(_files[_indx].FullName);
trackBar1.Value = _indx;
label23.Text = _files[_indx].Name;
this.pictureBox1.Image = img;
if (iOLd != null)
iOLd.Dispose();
_indx++;
if (_indx >= _files.Count)
{
_indx = 0;
trackBar1.Value = 0;
}
timer3.Interval = Convert.ToInt32(numericUpDown1.Value);
}
catch
{
}
}
我也在 numericupdown valuechanged 事件中做到了:
private void numericUpDown1_ValueChanged(object sender, EventArgs e)
{
timer3.Interval = Convert.ToInt32(numericUpDown1.Value);
}
问题是,例如,我在程序运行时将 numericupdown 值设置为 10000,并且它的移动速度非常慢,然后我立即将值设置为 1,因此当我将其更改为 1 时,timer3 间隔就会生效,它正在等待另一个周期10000 的值,则 timer3 间隔充当值 1。
我想要做的是,当我将 numericupdown 从 10000 更改为 1 时,它会立即更改,而不是等待另一轮 10000 值。