PDA

View Full Version : سوال در مورد تایمر ها



omidan24
چهارشنبه 15 خرداد 1392, 16:29 عصر
دوستان اگر بخوایم با استفاده از تایمر برنامه ای بنویسیم که به طور مثال هر 5 ثانیه یک صفحه جدید باز کنه و در اون صفحه جدید داخل تکست باکسش شماره صفحه بنویسه و این روال تا شماره 10 ادامه پیدا کنه چه جور کدی لازم داره
من این کد نوشتم اما تو هر صفحه فقط میزنه1 و صفحه بعد باز هم1 می زنه در حالیکه باید بزنه 2 و بعدی 3 و .... 10

private void Frm2_Load(object sender, EventArgs e)
{
timer1.Enabled = true;
timer1.Interval = 5000;
timer1.Start();
}

private void timer1_Tick(object sender, EventArgs e)
{
Frm3 Th = new Frm3();
int j = 0;

if (timer1.Interval == 5000)
{

for (int i = 0; i < 1; i++)
{
j++;
Th.MdiParent = this;
Th.textBox1.Text =j.ToString();
Th.Show();

}

}

}

matin.soft
چهارشنبه 15 خرداد 1392, 19:43 عصر
چون هر بار که تایمر 5 ثانیه می شمره و رویداد اجرا می شه اگه دقت کنید می یاد و مقدار صفر رو برای j تعریف می کنه بعد if رو بررسی می کنه و ... . شما باید متغیر j رو بصورت عمومی تعریف کنید در داخل کلاس و در خارج از رویداد.

private int j =0;

alexmcse
چهارشنبه 15 خرداد 1392, 19:46 عصر
این جوری بنویس
private void Frm2_Load(object sender, EventArgs e)
{
timer1.Enabled = true;
timer1.Interval = 5000;
timer1.Start();
}
int j = 0;
private void timer1_Tick(object sender, EventArgs e)
{
Frm3 Th = new Frm3();


if (timer1.Interval == 5000)
{

for (int i = 0; i < 1; i++)
{
j++;
Th.MdiParent = this;
Th.textBox1.Text =j.ToString();
Th.Show();

}

}

}

صباح فتحی
چهارشنبه 15 خرداد 1392, 19:47 عصر
int j = 0; تو فرم لود بزار

omidan24
چهارشنبه 15 خرداد 1392, 21:01 عصر
ازتمامی دوستان ممنونم که منو راهنمایی می کنید ببخشید از بابت زحمتی که به شما میدم.