注:この質問は、この1に関連しているだけでなく複数のカウントダウンタイマー+ボタン
私はなっ活動のカウントダウンを開始し、ボタンによって活性化されるタイマーを持っています。しかし、同じボタンをもう一度押すと問題が発生します。プログラムは別の時間(データグリッド内で指定)を使用してカウントダウンを再度開始しなければなりません。
複数のタイマーを使用するか、同じタイマーを使用する方法はありますか?ボタンを押すと新しい(リセット)値が表示されますか?
(君たちが私はちょうど私がここに投稿します私に教えて、より多くのコードを表示したい場合)
private bool timeSet2 = false;
int f = 1;
private void timer3_Tick(object sender, EventArgs e)
{
DateTime timeConvert;
DateTime dateTime = DateTime.Now;
string timeOp = dataGridView1.Rows[f].Cells[2].Value + "";
f++;
if (!timeSet2) // only get the value once
{
DateTime.TryParse(timeOp, out timeConvert);
milliSecondsLeft = (int)timeConvert.TimeOfDay.TotalMilliseconds;
timeSet2 = true;
}
milliSecondsLeft = milliSecondsLeft - 1000;
if (milliSecondsLeft > 0)
{
var span = new TimeSpan(0, 0, 0, 0, milliSecondsLeft);
lblLeft.Text = span.ToString(@"hh\:mm\:ss");
}
else
{
timer3.Stop();
}
私はそれを押すと、私のプログラムがするので、右ここにボタンをフィットする必要がありますもう一度カウントダウンを開始してください。しかし、私はこのために別の時間を作らなければならないかどうかはわかりません。
どのようなタイマーを使用していますか?ほとんどの(すべて?)タイマーで間隔を変更できます。たとえば、Windows Forms Timerには[インターバルプロパティ](https://msdn.microsoft.com/en-us/library/system.windows.forms.timer.interval%28v=vs.110%29.aspx)があります。あなたは変えることができます。 –
@MatthewWatson私は最も一般的なタイマーを使用しています。タイマーは1000ミリ秒の間隔で自分のフォームで時計を実行するために使用します。 – MattDAVM