اضافه کردن ثانیه شمار به فرم
سلام دوستان،من میخوام چندتا الگوریتم رو با #c پیاده سازی کنم،از یه دکمه برای محاسبه جواب استفاده کنم،حالا میخوام زمانیکه دکمه رو کلیک میکنم،یه ثانیه شمار روی فرمم ظاهر بشه و زمان اجرای اون الگوریتم رو بر روی فرم نشون بده و وقتی که به جواب رسید، ثانیه شمار هم متوقف بشه تا زمان اجرای الگوریتم رو داشته باشم،خلاصه اینکه:میخوام یه ثانیه شمار که شروعش با کلیک دکمه و توقفش با رسیدن به جواب باشه رو بسازم،لطفا یه راهنمایی کامل بکنید،چون تا حالا این مدلی کار نکردم،تشکر از همه دوستان
نقل قول: اضافه کردن ثانیه شمار به فرم
DateTime t1 = DateTime.Now;
//Algoritm Started
//...
//...
//...
//Algoritm Ended
TimeSpan t = DateTime.Now - t1;
label1.Text = t.Milliseconds.ToString(); // or t.Seconds.ToString();
label1.Text = "0";
Timer t = new Timer();
t.Interval = 1000;//1 second
t.Tick += new EventHandler(t_Tick);
t.Start();
//Algoritm Started
//...
//...
//...
//Algoritm Ended
t.Stop();
void t_Tick(object sender, EventArgs e)
{
label1.Text = (int.Parse(label1.Text) + 1).ToString();
}
نقل قول: اضافه کردن ثانیه شمار به فرم
می تونی از یه تایمر استفاده کنی و وقتی که الگوریتم شروع به کار میکنه فعالش کنی و در پایان کار هم غیر فعالش کنی خاصیت interval رو هم 1000 قرار بده تا تایمر هر یک ثانیه اجرا بشه یک کنترلی هم مثل Label یا TextBox تو فرم قرار بده و تو تابع Tick مقاری رو که در اون قرار میدی رو یک واحد (یک ثانیه) افزایش بده