内部に Timer3 tick イベントがあり、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に設定するため、代わりにtimer3間隔を1に変更すると有効になり、別のサイクルを待っています10000 の値の場合、timer3 間隔は値 1 として機能します。
私がやりたいことは、numericupdown を 10000 から 1 に変更すると、すぐに変更され、10000 値の別のラウンドを待たないことです。